php – 解析错误时阻止错误报告
发布时间:2020-12-13 22:25:31 所属栏目:PHP教程 来源:网络整理
导读:我将从写作开始,我确实看到了类似的问题,我确实尝试了建议的解决方案. 我正在运行一个cli,当我故意在php文件中输入一个解析错误时,我在stdOut中没有得到任何错误. 我使用以下配置: 用于error_reporting的22527是 ?ini_set(‘error_reporting’,E_ALL | E_ST
我将从写作开始,我确实看到了类似的问题,我确实尝试了建议的解决方案.
我正在运行一个cli,当我故意在php文件中输入一个解析错误时,我在stdOut中没有得到任何错误. PHP 5.5.20 (cli) (built: Jan 9 2015 11:20:56) php -i | grep error display_errors => STDOUT => STDOUT display_startup_errors => Off => Off error_append_string => no value => no value error_log => no value => no value error_prepend_string => no value => no value error_reporting => 22527 => 22527 html_errors => Off => Off ignore_repeated_errors => Off => Off log_errors => Off => Off log_errors_max_len => 1024 => 1024 track_errors => Off => Off xmlrpc_error_number => 0 => 0 xmlrpc_errors => Off => Off 附加:如果我添加自己的致命处理程序: function fatal_handler() { $error = error_get_last(); if ($error !== null) { echo ("nnERROR occured!nFile [{$error['file']}].nLine: [{$error['line']}].nMessage: [{$error['message']}]nn"); } exit(1); } register_shutdown_function("fatal_handler"); 我确实看到了stdio中的错误. 下面是一个代码(带有解析错误)的示例,它不会给我带来错误 class A{ const AAA = 'aaa'; static public function Result(A::AAA){ } } 解决方法
error_reporting => 22527 => 22527相当于E_ALL& ~E_DEPRECATED& ?E_STRICT.
使用-1或E_ALL错误级别(PHP 5.4中的E_ALL | E_STRICT)来显示所有错误. 将它设置在ini文件php.ini中. error_reporting = -1 以下操作无效,因为代码包含解析错误,因此永远不会调用ini_set(). <?php ini_set('error_reporting',-1) class A { const AAA = 'aaa'; static public function Result(A::AAA) { } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读