Funktionen set_exception_handler

Funktionen set_exception_handler låter dig definiera en funktion som kommer att anropas för att hantera ofångade undantag. Parametern tar emot namnet på hanterarfunktionen eller en anonym funktion. Hanteraren tar emot ett undantagsobjekt som parameter.

Syntax

phpset_exception_handler(callable $exception_handler): callable

Exempel

Låt oss sätta en enkel undantagshanterare:

php<?php
  function myExceptionHandler($exception) {
    echo 'Caught exception: ' . $exception->getMessage();
  }
  
  set_exception_handler('myExceptionHandler');
  
  throw new Exception('Something went wrong!');
?>

Resultat av kodkörning:

php'Caught exception: Something went wrong!'

Exempel

Användning av anonym funktion som hanterare:

php<?php
  set_exception_handler(function($exception) {
    echo 'Error: ' . $exception->getMessage();
  });
  
  throw new Exception('Critical error');
?>

Resultat av kodkörning:

php'Error: Critical error'

Exempel

Återställning av föregående hanterare:

php<?php
  function firstHandler($exception) {
    echo 'First handler: ' . $exception->getMessage();
  }
  
  function secondHandler($exception) {
    echo 'Second handler: ' . $exception->getMessage();
  }
  
  set_exception_handler('firstHandler');
  $old_handler = set_exception_handler('secondHandler');
  restore_exception_handler(); // Återställer firstHandler
  
  throw new Exception('Test');
?>

Resultat av kodkörning:

php'First handler: Test'