我目前正在开发一个需要大量外部库的应用程序。我现在的工作是设置一个独特的错误处理程序来管理每个错误。
到目前为止,我发现了7种不同类型的PEAR错误:
我只想处理严重的错误(比如原生的E * _ERROR)。唯一的问题是我完全不了解PEAR错误的批评!这些名称与处理它们的方式有关,而不是它们的严肃性......是否有关于它的真实文档?
我想更好的解决方案是使用他们的pushErrorHandling,但我只是不明白如何使用它...如果有人知道,我会很感激...
提前致谢!
答案 0 :(得分:0)
从您的问题来看,您似乎想要一个功能来处理所有警告,错误和异常。
对于E_ERROR,我认为你运气不好。这表明PHP无法从中恢复致命的运行时错误,因此您的脚本注定要失败。
除了例外,您可以执行set_exception_handler("funcName");
来处理程序执行中所有未捕获的异常。但是,这应该是绝对的最后手段来处理异常。如果你愿意的话,一个安全网,用于任何滑过你的尝试/捕获的裂缝的东西。这样做的原因(以及像这样全局处理任何错误)是你无法从异常中恢复,因为set_exception_handler没有返回值并且它已经退出程序堆栈。
在您的应用程序中慷慨地使用try / catch。这可能看起来很乏味,或浪费时间,但事实是你的程序将在某些时候失败。无论你是多么优秀的程序员,这都是不可避免的。正确使用异常处理将使您的应用程序能够正常关闭,甚至可以从异常中正确恢复。