Lorsque vous travaillez avec des BLOB MySQL contenant des images, l'affichage de l'image tout en faisant écho à d'autres contenus peut être problématique.
Dans l'extrait de code fourni :
header("Content-type: image/jpeg"); echo $row['imageContent']; echo '--------'; // If echoed before the image, the image will not display
La sortie du texte avant les données de l'image entraînera l'image pour ne pas afficher. En effet, les navigateurs interprètent le texte comme faisant partie de l'image.
Pour afficher à la fois le texte et l'image, convertissez les données de l'image en base64 et intégrez-les dans un fichier tag:
echo '<img src="data:image/jpeg;base64,' . base64_encode($row['imageContent']) . '" />'; echo 'Hello world.';
Notez que cette méthode n'est pas idéale pour les performances, car les données d'image ne sont pas mises en cache et sont plus lentes à charger sur les appareils mobiles. Envisagez d'utiliser une solution plus efficace si les performances sont critiques.
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!