Php 在网页上显示png文件

Php 在网页上显示png文件,php,curl,Php,Curl,全部, 我正在通过CURL执行一个PHP脚本,它返回一个PNG文件作为输出。如何在php网页中显示png文件?echo'; echo '<img src="urltotheimage.php" alt="Alt text" />'; 首先,为什么需要通过CURL获取PNG?有更好的方法从服务器获取图像,例如使用标记 无论如何,我假设您在变量中获取二进制数据,您可以通过设置适当的标题并回显数据来输出图像: header('Content-type: image/png'); echo

全部,

我正在通过CURL执行一个PHP脚本,它返回一个PNG文件作为输出。如何在php网页中显示png文件?

echo';
echo '<img src="urltotheimage.php" alt="Alt text" />';

首先,为什么需要通过CURL获取PNG?有更好的方法从服务器获取图像,例如使用
标记

无论如何,我假设您在变量中获取二进制数据,您可以通过设置适当的标题并回显数据来输出图像:

header('Content-type: image/png');
echo $image;

当您接收到表示png的字符串时,如果该字符串是base64编码的,则可以直接嵌入到图像标记上,如下所示:

<img src="data:image/png;base64,aAbBcCdDeEfFgGhH..." />

其中aabbccddeffgghh。。。将是图像字符串


有关数据uri的更多信息,请参见此处:

问题是我正在使用pchart中的imagefrompng()函数生成图像。当我试图在浏览器上显示它时,我会得到一堆字符,而不是图像文件。我不知道如何在浏览器中显示该文件,那么这个方法应该可以工作。奇怪的字符是浏览器试图输出为HTML的PNG文件的二进制数据。如果您指定适当的内容类型(image/png),它应该显示得很好。当通过MVC控制器模型架构调用时,它不起作用。