PHP 的调试技术
php.ini 文件中有许多配置设置。
在调试 PHP 应用程序时,应当知道两个配置变量。下面是这两个变量及其默认值:
display_errors = Off error_reporting = E_ALL
通过在 php.ini 文件中搜索它们,可以发现这两个变量当前的默认值。display_errors
变量的目的很明显 —— 它告诉 PHP 是否显示错误。默认值是 Off
。但是,要让开发过程更加轻松,请把这个值设为 On
:
display_errors = On
error_reporting
变量的默认值是 E_ALL
。这个设置会显示从不良编码实践到无害提示到出错的所有信息。E_ALL
对于开发过程来说有点太细,因为它在屏幕上为一些小事(例如变量未初始化)也显示提示,会搞糟浏览器的输出。我只想看到错误和不良编码实践,但是不想看到无害的提示。所以,请用以下值代替 error_reporting
的默认值:
error_reporting = E_ALL & ~E_NOTICE
重新启动 Apache,就全部设置好了。
把下列各行添加到 httpd.conf,覆盖任何 php.ini 文件:
php_flag display_errors on php_value error_reporting 2039
这会覆盖在 php.ini 文件中为 display_errors
已经设置的标志,以及 error_reporting
的值。值 2039
代表 E_ALL & ~E_NOTICE
。如果愿意采用 E_ALL
,请把值设为 2047
。同样,还是要重启 Apache。