在操作方法中,我有以下代码摘录:
error_reporting(E_ALL);
ini_set('display_errors', '1');
Logger::log('test');
Logger类是这样定义的:
class Logger {
public static function log() {
echo "test";
}
我故意忘记了函数的右大括号来演示这个问题。当调用该动作时,屏幕上绝对不会呈现任何内容。这是什么类型的错误,为什么它没有显示,即使我将 PHP 配置为显示所有错误,如上所示?
当然,如果我添加缺少的大括号,一切都可以。
您还必须启用display_startup_errors显示致命错误:
即使当display_errors
打开时,不会显示 PHP 启动序列期间发生的错误。强烈建议保留display_startup_errors
关闭,调试除外。
另请参阅注释display_errors
:
虽然display_errors
可以在运行时设置(使用ini_set()
),如果脚本出现致命错误,不会有任何影响。这是因为所需的运行时操作没有得到执行。
您可以在 Zend Framework application.in 中设置这两个值。附带说明:如果您设置error_reporting(-1)
它将报告(!显示)所有错误,包括E_STRICT
以及任何未来的补充。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)