PHP’de bir uygulamada bir çok koşulu kontrol edeceğimiz zaman onlarca
if kullanmak bayabilir. Bu tip baygınlıklardan kurtulmak için şimdi istisna yönetimini anlatacağım.
İstisna kullanırken de illa ki yine if kullanacağız ama bu sefer biraz daha kontrollü ve ideal olacak. Olası fatal error (ölümcül hata) uyarılardan biraz daha kurtaracaktır.
Kullanımı basit ve örnekle anlaşılabilecek gibidir. O yüzden hemen bir örnek ile size tasvir etmek istiyorum:
PHP Kod:
try{
$param = 100;
$harcamam = 150;
if($harcamam > $param)
throw new Exception("Paramız harcamaya yetmiyor!");
} catch(Exception $e) {
echo $e->getMessage();
}
Burada
try ifadesi içerisine yazdığımız kod bloğunda eğer bir istisna tetiklenirse kod bloğundaki çalışmayı durdurup ekrana bu mesajı yazacaktır. Ve sonrasında diğer kodları çalıştırmaya devam edecektir.
Kısa ve öz bir biçimde anlattık, bu nedenle son bir örnek daha göstermek istiyorum:
PHP Kod:
function hata($mesaj) {
throw new Exception($mesaj);
}
try{
$x = 10;
$y = 0;
if($y == 0) hata('Sıfıra bölünmez!');
echo 'Bölme işlemi sonucu: ' . $x/$y;
} catch(Exception $e) {
echo $e->getMessage();
}
echo 'Selam Dünya';
Burada
try içerisindeki istisna uyguladığımız kod bloğu bir hatayı tetiklediğimiz için duracak sonrasında kod bloğu dışında yer alan kodumuz çalışmaya devam edecektir.