PHP 7错误处理 PHP 7使用Statement PHP 7整数除法 从PHP 7开始,错误处理和报告已更改。通过PHP 5使用的传统错误报告机制来报告错误,现在大多数错误都是通过抛出错误异常来处理的。与异常类似,这些错误异常会一直冒泡直到它们到达第一个匹配的catch块。如果没有匹配的块,则将调用与 set_exception_handler() 一起安装的默认异常处理程序。如果没有默认的异常处理程序,则该异常将转换为致命错误,并将像传统错误一样处理。 由于错误层次结构不是从Exception扩展的,因此使用catch(Exception $ e){...}块来处理PHP 5中未捕获的异常的代码将不会处理这些错误。catch(Error $ e){...} block或 set_exception_handler() 处理程序需要处理致命错误。 例 <?php class MathOperations { protected $n = 10; // Try to get the Division by Zero error object and display as Exception public function doOperation(): string { try { $value = $this->n % 0; return $value; } catch (DivisionByZeroError $e) { return $e->getMessage(); } } } $mathOperationsObj = new MathOperations(); print($mathOperationsObj->doOperation()); ?> 它产生以下浏览器输出 - Modulo by zero PHP 7使用Statement PHP 7整数除法