Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Php:Converter um blob em um arquivo de imagem


Você pode usar alguns métodos diferentes dependendo de qual biblioteca de imagens php você instalou. Aqui estão alguns exemplos.

Observe que o echo é apenas um truque que uso para exibir várias imagens do mesmo script php ao percorrer um recurso de resultado do MySQL. Você também pode produzir via header() como @NAVEED mostrou.

DG:
$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())  . '" />';