如何使用 PHP 函数处理外部函数中引发的异常

使用 php 函数 set_exception_handler() 可处理外部函数中引发的异常:设置异常处理函数,它将捕获未抛出或处理的致命错误/异常。异常处理函数接收 exception 对象,包含异常信息。通过 try...catch 块可手动捕获和处理异常。

如何使用 PHP 函数处理外部函数中引发的异常

如何使用 PHP 函数处理外部函数中引发的异常

PHP 函数 set_exception_handler() 可以处理外部函数中引发的异常。设置一个异常处理程序函数后,它将捕获任何没有抛出或处理的致命错误或异常。

使用方法:

function exception_handler($exception) {
    // 处理异常
}

set_exception_handler('exception_handler');

实战案例:

假设我们有一个名为 calculate() 的函数,它会导致除以零的错误:

function calculate($dividend, $divisor) {
    if ($divisor == 0) {
        throw new Exception('Division by zero');
    }

    return $dividend / $divisor;
}

要在调用 calculate() 时处理异常,我们可以使用以下代码:

set_exception_handler(function ($exception) {
    echo 'Error: ' . $exception->getMessage();
});

try {
    $result = calculate(10, 0);
    echo 'Result: ' . $result;
} catch (Exception $e) {
    echo 'Caught exception: ' . $e->getMessage();
}

输出:

Error: Division by zero

说明:

  • 异常处理程序函数接收一个 Exception 对象作为参数,它包含异常的信息。
  • 通过 try...catch 块,我们可以手动捕获和处理异常。
  • 如果没有设置异常处理函数,则 PHP 会输出一个带有错误信息的浏览器错误页面。

以上就是如何使用 PHP 函数处理外部函数中引发的异常的详细内容,更多请关注其它相关文章!