(PHP 8 >= 8.5.0)
get_exception_handler — Obtém a função de manipulação de exceção definida pelo usuário
Retorna a função de manipulação de exceção atual, se houver.
Esta função não possui parâmetros.
Retorna a função de manipulação de exceção atualmente definida (se houver).
Se nenhum manipulador estiver definido, retorna null
.
O manipulador retornado é o valor chamável exato que foi passado a set_exception_handler() para defini-lo.
Exemplo #1 Exemplo de get_exception_handler()
<?php
$handler = function (Throwable $ex) {
echo "Exceção: " . $ex::class . ": " . $ex->getMessage() . "\n";
};
var_dump(get_exception_handler()); // NULL
set_exception_handler($handler);
var_dump(get_exception_handler() === $handler); // bool(true)
?>
Antes do PHP 8.5.0, esta funcionalidade poderia ser fornecida pelo código a seguir:
<?php
if (!function_exists('get_exception_handler')) {
function noop_exception_handler() {
}
function get_exception_handler(): ?callable {
$handler = set_exception_handler('noop_exception_handler');
restore_exception_handler();
return $handler;
}
}
?>