我写了这段代码,应该会导致错误,但没有显示错误!
<?php
error_reporting(-1);
echo "s";
header("Location: /index2.php");
?>
因为header()
是在 之后echo
,PHP 应该报错,标头已经发送;但没有显示错误,页面成功重定向到index2.php
!
我怎样才能看到错误?为什么会发生重定向?
我写了这段代码,应该会导致错误,但没有显示错误!
<?php
error_reporting(-1);
echo "s";
header("Location: /index2.php");
?>
因为header()
是在 之后echo
,PHP 应该报错,标头已经发送;但没有显示错误,页面成功重定向到index2.php
!
我怎样才能看到错误?为什么会发生重定向?
检查输出缓冲是否被激活。
它与 ob_start 相同,但隐含。
真的,我第一次看到真正想看到标头的人已经发送了错误。通常会冒犯我的事情。因为我通过使用 ob_start() 和 ob_flush 来解决它,所以我认为在你的情况下,服务器正在为你解决缓冲区问题。
尝试使用 PHP ob_end_flush() 关闭缓冲区。或阅读:https ://stackoverflow.com/a/6386034/827224