2

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

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

因为header()是在 之后echo,PHP 应该报错,标头已经发送;但没有显示错误,页面成功重定向到index2.php

我怎样才能看到错误?为什么会发生重定向?

4

2 回答 2

1

检查输出缓冲是否被激活。

它与 ob_start 相同,但隐含。

于 2013-03-03T23:24:17.230 回答
0

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

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

于 2013-03-03T23:49:15.710 回答