通过 PHP 脚本显示 PNG 图像

3
我希望通过PHP脚本显示图片,使得HTML中的标签正常工作,但源指向PHP脚本。该脚本将打开现有的png或jpg图像,并通过此方法显示该图像。
我一直尝试使用以下代码,但目前没有成功: $img = imagecreatefrompng("logo.png");
header("Content-type: image/png");
imagepng($img); imagedestroy($img);
没有错误,但输出的图片是破损的。
感谢您的回答。

你的脚本中还有其他输出吗?<?php 前面有空格吗? - Oliver Charlesworth
没有错误,图像输出有问题。 - aHunter
2个回答

14
header("Content-type: image/png");
readfile("$file");
exit;

添加一些标题是个好主意,例如:

header('Expires: 0');
header('Content-Length: ' . filesize($file));

请查看此处的讨论: http://php.net/manual/en/function.readfile.php


1
如果您的文件已经是PNG格式,并且您想要将其显示为PNG格式,那么您只需要输出它即可。这里完全不需要使用gd,readfile(将文件输出到客户端)就可以了。 - deceze

0

你必须在代码结尾处加上die();。否则,你将输出额外的数据,这将导致图像出现错误。


我尝试过了,但图像输出仍然有问题。无论如何还是谢谢。 - aHunter
除非脚本有更多明确输出某些内容的内容,否则它不会输出“额外的数据”。 - JJJ

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接