restore_exception_handler

(PHP 5, PHP 7, PHP 8)

restore_exception_handler Réactive l'ancienne fonction de gestion d'exceptions

Description

restore_exception_handler(): true

restore_exception_handler() est utilisé, après le changement de la fonction de gestion d'exceptions avec la fonction set_exception_handler(), pour revenir à l'ancien gestionnaire d'exceptions (qui peut être la fonction interne ou une fonction définie par l'utilisateur).

Liste de paramètres

Cette fonction ne contient aucun paramètre.

Valeurs de retour

Retourne toujours true.

Exemples

Exemple #1 Exemple avec restore_exception_handler()

<?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('Ceci utilise le premier gestionnaire d\'exception...');
?>

L'exemple ci-dessus va afficher :

[exception_handler_1] Ceci utilise le premier gestionnaire d'exception...

Voir aussi

add a note add a note

User Contributed Notes 1 note

up
10
rl7 at shinyblue dot net
10 years ago
Note that this does not work within an exception handler.

e.g.

<?php

function 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:
handler1
PHP Fatal error:  Uncaught exception 'Exception' with message 'might expect to see handler1, handler2' in /tmp/demo.php:15
Stack trace:
#0 {main}
  thrown in /tmp/demo.php on line 15
*/

?>
To Top