get_exception_handler

Gets the user-defined exception handler function

説明

callablenull get_exception_handler()

Returns the current exception handler function, if any.

パラメータ

この関数にはパラメータはありません。

戻り値

Returns the currently defined exception handler. If no handler is defined, null is returned.

The returned handler is the exact callable value that was passed to set_exception_handler to define it.

例1 get_exception_handler example

<?php

$handler = function (Throwable $ex) {
     echo "Exception: " . $ex::class . ": " . $ex->getMessage() . "\n";
};

var_dump(get_exception_handler()); // NULL

set_exception_handler($handler);

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

?>

注意

ヒント

Prior to PHP 8.5.0, this functionality can be provided by the following polyfill:

<?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;
    }
}
?>

参考

  • set_exception_handler
  • restore_exception_handler
  • restore_error_handler
  • error_reporting
  • Exceptions