sql >> Database >  >> RDS >> Mysql

Php:zet een blob om in een afbeeldingsbestand

Je kunt een paar verschillende methoden gebruiken, afhankelijk van de php-afbeeldingsbibliotheek die je hebt geïnstalleerd. Hier zijn een paar voorbeelden.

Let op, de echo is slechts een truc die ik gebruik om meerdere afbeeldingen van hetzelfde php-script weer te geven wanneer ik door een MySQL-resultaatbron loop. Je kon net zo goed output via header() als @NAVEED had laten zien.

GD:

$image = imagecreatefromstring($blob); 

ob_start(); //You could also just output the $image via header() and bypass this buffer capture.
imagejpeg($image, null, 80);
$data = ob_get_contents();
ob_end_clean();
echo '<img src="data:image/jpg;base64,' .  base64_encode($data)  . '" />';

ImageMagick (iMagick):

$image = new Imagick();
$image->readimageblob($blob);
echo '<img src="data:image/png;base64,' .  base64_encode($image->getimageblob())  . '" />';

GraphicsMagick (gMagick):

$image = new Gmagick();
$image->readimageblob($blob);
echo '<img src="data:image/png;base64,' .  base64_encode($image->getimageblob())  . '" />';


  1. GROUP_CONCAT en INNER JOIN met WHERE-clausule

  2. Haversine Fomula met MySQL krijgt locaties in de buurt

  3. Hoe zoek- en vervangtekenreeks in mySQL te beperken?

  4. Is dit een mogelijke bug van Oracle of mis ik iets?