【发布时间】:2018-09-15 10:56:18
【问题描述】:
我对这些术语及其在 PHP 中的确切含义/处理有点困惑:
异常可以这样定义:
当方法中发生错误时,该方法会创建一个对象并 将其交给运行时系统。对象,称为异常 对象,包含有关错误的信息,包括其类型和 发生错误时程序的状态。创建一个 调用异常对象并将其交给运行时系统 抛出异常。
可以捕获和处理异常。
致命错误可以这样定义:
致命错误是严重错误 - 例如,实例化一个 不存在的类的对象,或调用不存在的函数。 这些错误会导致脚本立即终止,并且 PHP 的 默认行为是在它们发生时将它们显示给用户。
致命错误不一定能被捕获(它们不会抛出通常的异常),否则不会有更具体的可捕获的致命错误。
但是,可捕获的致命错误与正常的异常有何不同?它的处理方式相同吗?可捕获的致命错误是否属于特定类型的异常?
【问题讨论】:
-
它由
set_error_handler处理。但是知道一些可捕获的致命错误现在是 php7 中的正常异常,您可以使用try catchon。 docs.php.net/errorfunc.constantsE_RECOVERABLE_ERROR
标签: php exception exception-handling try-catch fatal-error