throw Komutu
throw komutu, PHP'de açık bir şekilde istisna fırlatmak için kullanılır.
Temel Exception sınıfından türetilmiş bir sınıfın örneği olması gereken bir istisna nesnesini
parametre olarak alır. Bu fonksiyon çağrıldığında, mevcut kodun yürütülmesi anında durur ve PHP,
istisnayı işlemek için ilgili catch bloğunu bulmaya çalışır.
Sözdizimi
throw new ExceptionClass(message, code, previous);
Örnek
Basit bir istisna oluşturma örneği:
<?php
$age = -5;
if ($age < 0) {
throw new Exception('Yaş negatif olamaz');
}
?>
Kodun çalıştırılmasının sonucu:
Fatal error: Uncaught Exception: Yaş negatif olamaz
Örnek
İstisna işleme ile örnek:
<?php
try {
$res = 10 / 0;
if (is_infinite($res)) {
throw new Exception('Sıfıra bölme');
}
} catch (Exception $e) {
echo 'Hata: ' . $e->getMessage();
}
?>
Kodun çalıştırılmasının sonucu:
'Hata: Sıfıra bölme'
Örnek
Özel bir istisna kullanımı:
<?php
class MyCustomException extends Exception {}
try {
throw new MyCustomException('Özel hata mesajı');
} catch (MyCustomException $e) {
echo 'Özel hata yakalandı: ' . $e->getMessage();
}
?>
Kodun çalıştırılmasının sonucu:
'Özel hata yakalandı: Özel hata mesajı'