restore_exception_handler

(PHP 5, PHP 7, PHP 8)

restore_exception_handler Stellt den vorherigen Exceptionhandler wieder her

Beschreibung

restore_exception_handler(): true

Diese Funktion kann genutzt werden, um die Installation eines Exceptionhandlers mit set_exception_handler() rückgängig zu machen und den vorherigen Handler wieder in Kraft zu setzen (entweder den eingebauten oder eine andere benutzerdefinierte Funktion).

Parameter-Liste

Diese Funktion besitzt keine Parameter.

Rückgabewerte

Gibt immer true zurück.

Beispiele

Beispiel #1 restore_exception_handler()-Beispiel

<?php
function exception_handler_1(Exception $e)
{
echo
'[' . __FUNCTION__ . '] ' . $e->getMessage();
}

function
exception_handler_2(Exception $e)
{
echo
'[' . __FUNCTION__ . '] ' . $e->getMessage();
}

set_exception_handler('exception_handler_1');
set_exception_handler('exception_handler_2');

restore_exception_handler();

throw new
Exception('Dies löst den ersten Exceptionhandler aus ...');
?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

[exception_handler_1] Dies löst den ersten Exceptionhandler aus ...

Siehe auch

add a note

User Contributed Notes 1 note

up
13
rl7 at shinyblue dot net
11 years ago
Note that this does not work within an exception handler.e.g. <?phpfunction handler1(Exception $e) {    echo "handler1\n";    restore_exception_handler();    throw $e;}function handler2(Exception $e) {    echo "handler2\n";}set_exception_handler( 'handler2' );set_exception_handler( 'handler1' );throw new Exception( 'might expect to see handler1, handler2' );/* Outputs:handler1PHP Fatal error:  Uncaught exception 'Exception' with message 'might expect to see handler1, handler2' in /tmp/demo.php:15Stack trace:#0 {main}  thrown in /tmp/demo.php on line 15*/?>
To Top