MySQL データベースに BLOB として保存されている画像を表示しようとすると、開発者は、テキストがエコーされる前に問題が発生することがよくあります。
この問題は、Web ブラウザが画像データ ストリームの外側でエコーされたテキストを画像の一部として解釈するために発生します。これは、ヘッダーと画像データを中断することなく継続的に配信する必要があるためです。
他のアイテムと画像を中断することなく一緒に表示するには、画像データを変換できます。をbase64に埋め込み、内に埋め込みます。タグ。この方法により、画像を表示しながら HTML 出力にテキストやその他の要素を含めることができます。
コードの改訂版は次のとおりです。
<code class="php">echo '<img src="data:image/jpeg;base64,' . base64_encode( $row['imageContent'] ) . '" />'; echo 'Hello world.';</code>
注: このソリューションでは画像と他のテキストの両方を表示できますが、キャッシュできず、モバイル デバイスでは速度が低下する可能性があるため、理想的ではありません。データ URI の詳細については、caniuse のドキュメントを確認することを検討してください。
以上がMySQL に BLOB として保存されている画像の周囲にテキストをエコーするときに表示の問題を回避するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。