set_exception_handler funksiýasy
set_exception_handler funksiýasy tutulmadyk ýalňyşlyklary işlemek üçin çagyrylar funksiýany kesgitlemäge rugsat berýär. Parametr hökmünde işleýji funksiýanyň ady ýa-da anonim funksiýa berilýär. Işleýji, ýalňyşlyk objekti parametri hökmünde alýar.
Sintaksis
set_exception_handler(callable $exception_handler): callable
Mysal
Pesine ýalňyşlyk işleýjisini gurnalyň:
<?php
function myExceptionHandler($exception) {
echo 'Tutulan ýalňyşlyk: ' . $exception->getMessage();
}
set_exception_handler('myExceptionHandler');
throw new Exception('Bir zat ýalňyş boldy!');
?>
Kodyň iş netijesi:
'Tutulan ýalňyşlyk: Bir zat ýalňyş boldy!'
Mysal
Işleýji hökmünde anonim funksiýany ulanmak:
<?php
set_exception_handler(function($exception) {
echo 'Ýalňyşlyk: ' . $exception->getMessage();
});
throw new Exception('Kritik ýalňyşlyk');
?>
Kodyň iş netijesi:
'Ýalňyşlyk: Kritik ýalňyşlyk'
Mysal
Öňki işleýjini dikeltmek:
<?php
function firstHandler($exception) {
echo 'Birinji işleýji: ' . $exception->getMessage();
}
function secondHandler($exception) {
echo 'Ikinji işleýji: ' . $exception->getMessage();
}
set_exception_handler('firstHandler');
$old_handler = set_exception_handler('secondHandler');
restore_exception_handler(); // firstHandler funksiýasyny dikeldýär
throw new Exception('Synag');
?>
Kodyň iş netijesi:
'Birinji işleýji: Synag'