Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.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头函数在不应该时产生错误_Php_Header - Fatal编程技术网

php头函数在不应该时产生错误

php头函数在不应该时产生错误,php,header,Php,Header,我正在使用PHP4.3.11,当我执行一个命令时,总是会出现这样的错误 警告:无法修改标题信息-标题已经由d:\folder\file.php中的d:\folder\file.php:1)在2行上发送 警告:无法修改标题信息-标题已经由d:\folder\file.php中的d:\folder\file.php:1)在3行上发送 当前PHP版本:4.3.11 我用来生成此错误的代码是 <?php header("Cache-Control: no-cache, must-reval

我正在使用PHP4.3.11,当我执行一个命令时,总是会出现这样的错误

警告:无法修改标题信息-标题已经由d:\folder\file.php中的d:\folder\file.php:1)在2行上发送

警告:无法修改标题信息-标题已经由d:\folder\file.php中的d:\folder\file.php:1)在3行上发送 当前PHP版本:4.3.11

我用来生成此错误的代码是

<?php
    header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
    header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");   // Date in the past

    echo 'Current PHP version: ' . phpversion();

    // prints e.g. '2.0' or nothing if the extension isn't enabled
    echo phpversion('tidy');
?>

确保PHP块前没有空行和不可见字符(如),以便
确保没有空行和不可见字符(如)在PHP块之前,以便
文件开头是否有a?

文件开头是否有a?

您收到的错误意味着整个脚本(包括其他文件)在调用header()函数之前发送一些输出


您应该修改所有文件,查看其中是否有输出内容(使用echo()或print()),或者在最后一个结束标记?>

后是否遗漏了一些空格。您收到的错误意味着整个脚本(包括其他文件)在调用header()函数之前发送了一些输出


您应该修改所有文件,查看其中是否有输出内容(使用echo()或print()),或者,如果您在最后一个结束标记之后遗漏了一些空格?>

如果您的文件只包含php代码,建议跳过php结束标记以避免文件结尾出现空格问题如果您的文件只包含php代码,建议跳过php结束标记标记以避免文件结尾出现空格问题这不太可能,但是可以在php.ini中定义auto_prepend_文件(也可能是.htaccess)

-这就像每个脚本开头的
require()
。您可以通过查看
phpinfo()输出


但我也认为问题出在utf-8 BOM上。

这不太可能,但有可能在php.ini中定义auto_prepend_文件(也可能是.htaccess)

-这就像每个脚本开头的
require()
。您可以通过查看
phpinfo()输出


但我也认为问题出在utf-8 BOM上。

谢谢你的快速响应,但它没有,它真的让我抓狂:|谢谢你的快速响应,但它没有,它真的让我抓狂:|即使我直接执行文件,也会产生错误,其他执行应该返回相同的结果,因为它们是使用ajax执行的。就像@solomongaby所说的,您应该完全跳过结束标记。这在PHP中是允许的,这样做可以避免尾随空格/linefeed的问题。即使我直接执行文件,也会产生错误,其他执行也会返回相同的错误,因为它们是使用ajax执行的。正如@Solomangaby所说,您应该完全跳过结束标记。这在PHP中是允许的,这样做可以避免尾随空格/linefeedThank的问题!我已经和另一个编辑核实过了,删除了那些字符,它成功了!!!谢谢我已经和另一个编辑核实过了,删除了那些字符,它成功了!!!