我有一个要连接的网络服务。我的查询得到了有效的回复,其中一个是 IMAGE 类型。我没有直接控制数据库,他们也没有真正提供支持——所以我不能向他们询问具体细节。
我需要提供显示或下载此图像的链接。这应该很容易,但我已经为此努力了很长一段时间。
我有图像数据。我把它放在一个名为 $evidence 的变量中。如果我执行以下操作,我会在我使用的所有浏览器中得到一个损坏/不可读的图像(损坏的图像链接符号或类似文本):
header("Content-type: image/jpeg");
echo $evidence;
因此,在调试时,我尝试使用一些复制/粘贴代码来内联显示图像:
echo '<img src="data:image/jpeg;base64,'.$evidence.'" />';
这按预期工作......图像显示正确。
但是 - 我需要能够通过标题以正确的方式执行此操作,因为我需要做其他事情,例如能够强制下载。
每次我不得不做这样的事情时,基本的“header, echo”方法总是有效的。从几乎所有教程的外观来看:这应该有效。看起来很简单,大多数教程甚至都不看显示问题(只看数据获取问题)。