set_error_handler Fonksiyonu
set_error_handler fonksiyonu, kullanıcı tanımlı bir hata işleyici kurar.
İlk parametre olarak, bir hata oluştuğunda çağrılacak callback fonksiyonu iletilir.
İsteğe bağlı ikinci parametre ile, işleyicinin yakalaması gereken hata türleri belirtilebilir.
Sözdizimi
set_error_handler(callable $error_handler, int $error_types = E_ALL | E_STRICT);
Örnek
Basit bir özel hata işleyici örneği:
<?php
function customError($errno, $errstr, $errfile, $errline) {
echo "Hata [$errno]: $errstr, $errfile dosyasında $errline satırında";
}
set_error_handler("customError");
echo $tanimsizDegisken;
?>
Kodun çalıştırılma sonucu:
Hata [8]: Tanımlanmamış değişken: tanimsizDegisken, /path/to/file.php dosyasında 7 satırında
Örnek
Sadece belirli hata türlerini işleme:
<?php
function warningHandler($errno, $errstr) {
if ($errno === E_WARNING) {
echo "Yakalanan uyarı: $errstr";
}
}
set_error_handler("warningHandler", E_WARNING);
strpos(); // Uyarıya neden olacak
?>
Kodun çalıştırılma sonucu:
Yakalanan uyarı: strpos() en az 2 parametre bekliyor, 0 verildi
Örnek
Varsayılan hata işleyiciye dönüş:
<?php
set_error_handler(null); // Varsayılan işleyiciye dönüş
?>