set_exception_handler

(PHP 5, PHP 7, PHP 8)

set_exception_handler 设置用户自定义的异常处理函数

说明

set_exception_handler(?callable $callback): ?callable

设置默认的异常处理程序,用于没有用 try/catch 块来捕获的异常。 在 callback 调用后异常会中止。

参数

callback

当一个未捕获的异常发生时所调用的函数。该处理函数需要接受一个参数,该参数是抛出的 Throwable 对象。ErrorException 都实现了 Throwable 接口。这是处理程序签名:

handler(Throwable $ex): void

也可以传递 null 值用于重置异常处理函数为默认值。

返回值

返回之前定义的异常处理程序,或者在错误时返回 null。如果之前没有定义错误处理程序,也会返回 null

示例

示例 #1 set_exception_handler() 范例

<?php
function exception_handler(Throwable $exception) {
echo
"Uncaught exception: " , $exception->getMessage(), "\n";
}

set_exception_handler('exception_handler');

throw new
Exception('Uncaught Exception');
echo
"Not Executed\n";
?>

参见