Můžete použít několik různých metod v závislosti na tom, jakou knihovnu obrázků php máte nainstalovanou. Zde je několik příkladů.
Všimněte si, že echo je jen trik, který používám k zobrazení více obrázků ze stejného php skriptu, když procházím zdrojem výsledků MySQL. Mohli byste stejně dobře vystupovat přes header(), jak ukázal @NAVEED.
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()) . '" />';