Maison >base de données >tutoriel mysql >Comment convertir un champ BLOB MySQL en fichier image en PHP ?

Comment convertir un champ BLOB MySQL en fichier image en PHP ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-11 18:51:02344parcourir

How to Convert a MySQL BLOB Field to an Image File in PHP?

Convertir un champ Blob MySQL en fichier image en PHP

En PHP, vous pouvez convertir des données stockées sous forme de BLOB (Binary Large Object ) dans une base de données MySQL dans un fichier image. Ceci est utile pour afficher des images sur des pages Web ou pour les stocker dans un système de fichiers.

Voici trois méthodes que vous pouvez utiliser, en fonction de la bibliothèque d'images PHP que vous avez installée :

Bibliothèque GD :

$image = imagecreatefromstring($blob);

ob_start(); // Capture the output buffer
imagejpeg($image, null, 80);
$data = ob_get_contents();
ob_end_clean();

echo '<img src="data:image/jpg;base64,' . base64_encode($data) . '" />';

Bibliothèque ImageMagick (iMagick) :

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

Bibliothèque GraphicsMagick (gMagick) :

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

Dans ces exemples, l'instruction echo utilise les URI de données pour afficher les images en ligne. Alternativement, vous pouvez utiliser la fonction header() pour afficher l'image directement dans le navigateur :

header('Content-Type: image/jpeg');
echo $data;

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn