根据
PHP Manual:
内部PHP函数主要使用错误报告,只有现代面向对象的扩展使用异常.但是,可以使用ErrorException将错误简单地转换为异常
内部PHP函数主要使用错误报告,只有现代面向对象的扩展使用异常.但是,可以使用ErrorException将错误简单地转换为异常
ErrorException中提供的示例:
<?PHP function exception_error_handler($errno,$errstr,$errfile,$errline ) { throw new ErrorException($errstr,$errno,$errline); } set_error_handler("exception_error_handler");
它似乎允许使用Exceptions而不是默认的错误报告.我的问题是,这是鼓励还是我们的选择?
此外,这是一个更好的做法,像上面的例子一样单独使用Exception,或者同时使用Exception(set_exception_handler)和Error reporting(set_error_handler)?
简答:不.这是两个不同的功能.
答案很长:这并不是要取代而是要利用. set_exception_handler
Docs用于例外,set_error_handler
Docs用于错误.那是两双不同的鞋子.
另见:
> PHP: exceptions vs errors?
> PHP: What is the flow of control for error handling?
> Error Handling and LoggingDocs