调整类似于错误报告的 PHP 异常报告

Posted

技术标签:

【中文标题】调整类似于错误报告的 PHP 异常报告【英文标题】:Tuning PHP exception reporting similar to error reporting 【发布时间】:2012-04-24 13:57:32 【问题描述】:

对于 Apache Web 服务器,我们可以通过 php.ini 中的 error_reporting 条目调整错误报告。

是否有类似的异常报告设置?

我下面的代码显示error_reporting 不会影响exception throw 命令。

function actionTestThrow() 
    error_reporting(null);
    $i=122;        
    throw new Exception('abb');
    $i=344;        
    echo $i;

【问题讨论】:

【参考方案1】:

异常总是致命的。你不能只是隐藏它们。如果您想忽略异常,则需要在 try catch 块中处理它。


你可以做的是扩展异常类(FatalExceptionNoticeException)等,并以不同的方式处理,更多关于 Extending Exceptions

【讨论】:

【参考方案2】:

我认为你应该用try/catch块包装你的函数调用或函数体,当捕获到异常时只需使用trigger_error函数,以便通过php的error_reporting机制移动错误

【讨论】:

【参考方案3】:

这里是如何设置自定义异常处理程序

function exception($e) 
var_dump($e); 


set_exception_handler ( 'exception' );

【讨论】:

以上是关于调整类似于错误报告的 PHP 异常报告的主要内容,如果未能解决你的问题,请参考以下文章

PHP学习5——异常处理

跟着百度学PHP[11]-PHP当中的异常处理

PHP7 错误处理

调整PHP中的错误级别

错误报告

第八周课程总结&实验报告