PHP 8.5.0 RC 3 available for testing

get_error_handler

(PHP 8 >= 8.5.0)

get_error_handler获取用户定义的错误处理函数

说明

get_error_handler(): ?callable

返回当前错误处理函数(如果存在)。

参数

此函数没有参数。

返回值

返回当前定义的错误处理程序(如果存在)。如果使用内置错误处理程序,则返回 null

返回的处理程序是传递给 set_error_handler() 以定义它的精确可调用值。

示例

示例 #1 get_error_handler() 示例

<?php

$handler
= function (int $errno, string $errstr, ?string $errfile, ?int $errline) {
echo
"Error: " . $errstr . "\n";
};

var_dump(get_error_handler()); // NULL

set_error_handler($handler);

var_dump(get_error_handler() === $handler); // bool(true)

?>

注释

小技巧

在 PHP 8.5.0 之前,以下 polyfill 可以提供此功能:

<?php
if (!function_exists('get_error_handler')) {
function
noop_error_handler() {
}
function
get_error_handler(): ?callable {
$handler = set_error_handler('noop_error_handler');
restore_error_handler();
return
$handler;
}
}
?>

参见

添加备注

用户贡献的备注

此页面尚无用户贡献的备注。
To Top