VnexTR: Bilişim Forumu

Tam Versiyon: PHP istisna Yönetimi
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
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 == 0hata('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.