imagegif()奇怪的失败

时间:2012-02-10 23:09:38

标签: php gd

我创建图像输出。当我调用最终的imagegif()时,我会得到通常的“图像sdfsdsdf无法显示,因为它包含错误”。但是如果我通过第二个参数保存这个图像,它会导致有效的GIF图像! imagegif()返回true。 现在怎么样?

2 个答案:

答案 0 :(得分:1)

如果你使用带有一个参数的imagegif(),则需要使用和

header('Content-Type: image/gif');

因为图像显示在浏览器中,否则图像会保存到文件中。

答案 1 :(得分:1)

  

但是如果我用第二个参数保存这个图像,它会产生一个   有效的GIF图像!并且imagegif()返回true。现在怎么样?

检查脚本的输出 - 它会向浏览器发送其他内容。通常,它可能是错误/警告/通知消息,来自该脚本的文本输出或包含在其中的另一个,空格/新行或其他内容(如脚本文件中的UTF编码情况下的BOM记录){{1}之前} 标签。

解决方案很简单 - 注释<?php并直接调用脚本(不包括脚本生成的图像的页面)。检查图像文件本身二进制内容的“垃圾”之前的任何内容。

如果错误报告/显示也已关闭,您可能需要在脚本顶部添加header('Content-Type: image/gif');