try {
throw new ErrorException("Exception message", 0, E_USER_ERROR);
} catch(ErrorException $e) {
echo "This exception severity is: " . $e->getSeverity();
var_dump($e->getSeverity() === E_USER_ERROR);
}
它还在继续:
This exception severity is: 256
bool(true)
异常严重程度意味着什么,我是否必须使用它?
答案 0 :(得分:2)
$severity
是一个整数,表示抛出的错误的严重性。手册指出它可以是任何整数,但最好使用predefined error constants中的常量。这些与error_reporting使用的相同。
请注意ErrorException
扩展Exception
,添加$severity
参数。这是因为ErrorException
通常用于将PHP显示的正常错误转换为Exception
。这是通过set_error_handler()完成的。
因此,ErrorException::$severity
实际上是PHP错误的严重性,如果您没有将其作为Exception
投放,则会显示该错误。您可以根据导致ErrorException
的原因,使用它来决定当你抓住{{1}}时要做什么。