为什么没有'标题已发送'错误?

时间:2013-03-03 23:09:05

标签: php

我写了这段代码,这应该会导致错误,但是没有显示错误!

<?php
    error_reporting(-1);
    echo "s";
    header("Location: /index2.php");
?>

由于header()位于echo之后,因此PHP应该在标头已发送时出错;但没有显示错误,页面成功重定向到index2.php

如何查看错误?为什么要重定向?

2 个答案:

答案 0 :(得分:1)

检查是否已激活Output buffering

它与ob_start相同,但是隐含。

答案 1 :(得分:0)

真的,我第一次看到有人真的想看到标题已经发送错误。通常会让我失望的事情。因为我通过使用ob_start()和ob_flush来解决它,我认为在你的情况下,服务器正在为你解决缓冲区问题。

尝试使用PHP ob_end_flush()来关闭缓冲区。或者阅读:https://stackoverflow.com/a/6386034/827224