imagegif()奇怪失败

问题描述:

我创建图像输出。当我打电话给最后的imagegif()时,我得到了通常的“图像sdfsdsdf由于包含错误而无法显示”。但如果我通过第二个参数保存此图像,它会生成有效的GIF图像!并且imagegif()返回true。 现在呢?imagegif()奇怪失败

+0

向我们展示一些代码。 – rekire 2012-02-10 23:11:49

但是,如果我用第二个参数保存此图像,结果将产生一个有效的GIF图像 ! imagegif()返回true。怎么办?

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

解决方法很简单 - 评论header('Content-Type: image/gif');并直接调用脚本(而不是页面包括脚本生成的图像)​​。检查图像文件本身的二进制内容的“垃圾”之前的任何内容。

如果错误报告/显示也关闭,您可能需要在脚本的顶部添加error_reporting(E_ALL); ini_set('display_errors', 1);

,如果你有一个参数使用imagegif(),然后becouse的图像显示在浏览器,否则将图像保存到文件,需要使用和

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

+0

是啊,它已经在那里! – 2012-02-10 23:17:09