Maison >base de données >tutoriel mysql >Comment convertir un champ BLOB MySQL en fichier image en 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!