当尝试显示存储在 MySQL 数据库中的 BLOB 图像时,开发人员经常会遇到任何文本回显的问题或在图像标题之后导致图像显示不正确。
出现问题的原因是 Web 浏览器将图像数据流外部回显的任何文本解释为图像的一部分。这是因为标题和图像数据必须连续且不间断地传递。
要不间断地显示其他项目和图像,可以转换图像数据转换为 base64 并将其嵌入到 中标签。这种方法允许您在 HTML 输出中包含文本和其他元素,同时仍显示图像。
这是代码的修订版本:
<code class="php">echo '<img src="data:image/jpeg;base64,' . base64_encode( $row['imageContent'] ) . '" />'; echo 'Hello world.';</code>
注意: 虽然此解决方案允许您同时显示图像和其他文本,但它并不理想,因为它无法缓存并且在移动设备上速度可能很慢。考虑检查 caniuse 文档以获取有关数据 URI 的更多信息。
以上是在 MySQL 中以 BLOB 形式存储的图像周围回显文本时,如何避免显示问题?的详细内容。更多信息请关注PHP中文网其他相关文章!