来自 MySQL 的 PHP 显示图像 BLOB
我正在尝试显示存储在数据库的BLOB列中的图像;
我使用SELECT从数据库中获取数据,不对数据执行任何转换,并使用以下内容显示它(来自其唯一输出如下的脚本):
header("Content-Type: image/jpeg");
echo $image;
请注意,chrome 将内容大小显示为图像的正确大小以及正确的哑剧类型 ()。在标头之前没有任何回显,并且我检查了数据库中的 blob 是否正确。标签前后也没有尾随空格。image/jpeg
<?php ?>
chrome/IE 显示图像图标,但不显示图像本身。任何想法?
编辑:图像是从数据库中获取的,如下所示:
$sql = "SELECT * FROM products WHERE id = $id";
$sth = $db->query($sql);
$row = $sth->fetch();
$image = $row['image'];
var_dump($image)给出了:
string 'ÿØÿà�JFIF��x�x��ÿá�ZExif��MM�*�����������J��������Q�������Q������tQ������t�����† ��±ÿÛ�C�
ÿÛ�CÿÀ�_"�ÿÄ�����������
ÿÄ�µ���}�!1AQa"q2‘¡#B±ÁRÑð$3br‚
%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³ ´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ��������'... (length=60766)