【发布时间】:2012-12-12 01:12:11
【问题描述】:
我的/etc/php5/apache2/php.ini 文件有下一个配置:
display_errors = On
log_errors = On
error_reporting = E_ALL | E_STRICT
我可以在浏览器中查看Undenifed variable、Parse error 等错误,但使用下一个代码
<!DOCTYPE html>
<?php
header('hola: adios');
?>
我看不到 Headers already sent 错误。同样使用 Chrome 的开发者工具,我可以看到标题 hola: adios 已设置。
我怎么能看到这些类型的错误?
谢谢。
【问题讨论】:
-
您开启了自动输出缓冲,因此没有错误......
-
@Wrikken 我在我的 php.ini 中设置了
output_buffering = Off并重新启动了 apache 但没有区别。 -
好吧,在这种情况下,phpinfo() 在那个确切点上对输出缓冲区、错误报告级别、显示错误设置等有什么看法? ?
-
@Wrikken 抱歉,apache 没有重新启动。现在我可以看到错误了。但这让我想知道:如果我们可以设置 output_buffering = Off 那么为什么还要费心 PHP 结束标记呢?谢谢。
-
见Headers already sent "Outbut buffering workaround" 以及为什么它是业余的。
标签: php