收到以下错误:
"Warning: Cannot modify header information - headers already sent by (output started at..."
以下一行:
echo '<center>Current Time is '. gmdate("H:i A") . ' GMT (Greenwich Mean Time or UTC)<br />';
如果我将其注释掉,它会在下一个echo语句中抛出错误。关于为什么PHP如此讨厌我的echo语句的想法?
以下是我在HTML底部的内容:
<div id="saveCanForm" width="100%">
<?php include('savereport.php'); ?>
</div>
答案 0 :(得分:10)
问题不在于echo
语句。看起来你在文件后面的某个地方有一个header
调用,但是一旦输出任何文本就无法发送标题。您可以将标题移动到脚本的开头,也可以使用输出缓冲。
答案 1 :(得分:0)
因为我们的echo
来 之前您正在发送不允许的标头。确保标题在您的任何输出之前。
如果您不想重新排列,也可以使用输出缓冲。
答案 2 :(得分:0)
在有任何其他输出之前处理标题,所以如果你写出一些东西,那么PHP之后就无法正确发送标题。在您的代码中的某个时刻,您将提供HEAD指令,因此会失败。 (这有技术原因,比如重定向等)
答案 3 :(得分:0)
这不是问题的回声。这很可能是由.php文件中包含的文件引起的。你有一个文件吗?这可能是最重要的。如果你包含的文件声明不在文件的顶部,请确保它是。