0

总是在 try catch 中捕获基 Exception 类是一种好的编码习惯吗?

try
{
    //
    // Piece of code
    //
}
catch (CustomException $my_ex)
{
    // Handle CustomExcepton
}
catch (Exception $other_exceptions)
{
    // Handle all other exceptions
}

如果是这样,为什么?

4

2 回答 2

2

在 PHP 中,您可以安装一个全局异常处理程序。需要时,您可以在代码中捕获异常,所有未处理的异常都会转到全局异常处理程序。根据你的策略,你决定做什么。

当然,当您决定死亡时,我们会感谢您提供清晰的错误消息和日志。

一般来说,如果您可以从异常中恢复,请使用 try .. catch 块,否则让全局异常处理程序完成他的工作,并且不恢复。

于 2012-09-06T21:27:58.813 回答
0

您应该只捕获您现在如何处理的异常。其他人应该冒泡到最后调用方法和一些全局处理程序。

于 2012-09-06T21:31:10.497 回答