php 异常处理函数执行顺序为:异常对象构造函数set_exception_handler() 调用shutdown 函数exit() 调用
PHP 异常处理中的函数执行顺序
在 PHP 中,当发生异常时,PHP 会按照以下顺序执行以下函数:
- 异常对象构造函数:异常对象将被创建,并传递给构造函数。
- set_exception_handler() 调用:如果已设置异常处理程序,则将调用该函数。
- shutdown 函数:所有已注册的函数和变量将被销毁。
- exit() 调用:脚本将退出,并返回状态代码 1。
实战案例:
<?php
try {
throw new Exception('My Exception');
} catch (Exception $e) {
echo 'Caught exception: ' . $e->getMessage() . PHP_EOL;
} finally {
echo 'Finally block executed' . PHP_EOL;
}
执行顺序:
- 创建异常对象,并传递给
Exception
构造函数。 - 调用
set_exception_handler()
处理程序,因为此处未设置,所以跳过此步骤。 - 所有已注册的函数和变量将被销毁。
- 脚本将退出,状态代码为 1。
输出:
Caught exception: My Exception
Finally block executed
值得注意的是,即使异常在 finally
块中抛出,它也不会被捕获。
以上就是PHP 异常处理中的函数执行顺序如何?的详细内容,更多请关注编程网其它相关文章!