Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Drupal\u set\u头返回错误_Php_Drupal_Drupal 6_Gd_Readfile - Fatal编程技术网

Php Drupal\u set\u头返回错误

Php Drupal\u set\u头返回错误,php,drupal,drupal-6,gd,readfile,Php,Drupal,Drupal 6,Gd,Readfile,好的,当我尝试执行此例程时,检索GD错误: Function foo () { $file_name = 'image1.jpg'; $type = 'image/jpeg'; drupal_set_header('Content-Type:'.$type); drupal_set_header('Content-Length: ' . filesize($file_name)); readfile($file_name); } 错误: The i

好的,当我尝试执行此例程时,检索GD错误:

Function foo ()
{  
    $file_name = 'image1.jpg';
    $type = 'image/jpeg';
    drupal_set_header('Content-Type:'.$type);
    drupal_set_header('Content-Length: ' . filesize($file_name));
    readfile($file_name); 
}
错误:

The image http://192.168.1.190/parsegard/trackback/check/perm?pic=sites/default/files/imagecache/large/content_types/food_nutrition/2470/image1.jpg becuase it contains errors.

您应该绝对确保页面上没有其他输出,甚至没有前导空格或尾随空格。这是这种错误最常见的原因。同时关闭错误输出,将错误记录到文件中。PHP错误也很容易导致二进制输出损坏


找到不需要的输出源将是最佳的解决方案,但如果你绝对不能,只是想让它工作,你可以作为一个解决办法。在脚本的绝对开头调用
ob\u start()
(前面不允许空白或其他PHP代码),在脚本的绝对结尾调用
ob\u end\u clean()
。然后在图像输出函数的开头调用
ob_clean()
,在函数的结尾调用
ob_flush()

我尝试
错误报告(0)@ini_集('显示错误',0)
但是它也包含错误,我在一个简单的php文件中使用了这个路由,它工作得很好。@bizzare:问题很可能是图像不是发送到客户端的唯一数据。暂时删除
readfile()
,并将
内容类型设置为
text/plain
,以查看阻碍图像的因素。请注意,即使是单个空格或换行符也可能是罪魁祸首!好的,我这样做,并在将内容类型更改为纯文本时发现一个空格,如何删除该空格或清除标题输出?@bizzare:检查其余代码以了解空格的来源。我从PHP的开始和结束标记(
)开始,在
之前或之后经常出现意外空格/制表符/换行符。好吧!在drupal模块中进行im,并在re
前后检查它是否有空格、制表符和新行,但没有发现任何内容,是drupal故障吗?