Merhaba arkadaşlar. Bu yazımızda PHP ile hata yakalamaya yarayan Try-Catch kullanımını göreceğiz.
Mesela projemizde bazı yerlerde Fatal Error (Ölümcül hata) alabiliriz. Php fatal error verdiği zaman direk çalışmayı durdurur ve sonraki satırlarda kodlar çalışmaz. Ama biz çalışmasına devam etmesini isteyebiliriz. Bu gibi durumlarda Try Catch kullanmak sorunu çözmemize yardımcı olacaktır.
Kullanımı şu şekildedir;
Try komutu içinde belli koşullar trhrow ifadesi ile tanımlanır.
Eğer throw ifadesi çalışırsa mesajla birlikte catch ifadesine gider.
Catch ifadesi ile hatayı yakalar ve ekrana yazdırırız.
Basit bir örnekle anlatmaya çalışacağım.
<?php
$paket_fiyatı = 55;
$bakiye = 45;
try {
if ($paket_fiyatı > $bakiye) {
throw new Exception("Yetersiz bakiye.");
}else{
echo "Paketi alabilirsiniz.";
}
}
//Hatayı burda yakalıyoruz
catch(Exception $e) {
echo 'Message: ' .$e->getMessage();
}
// Kod çalıştığında ekranda Message: Yetersiz bakiye yazacaktır.
?>
Yukarda basit bir try-catch yapısı görüyorsunuz. Bu örnek ile birlikte en azından bir şeyler anladığınızı düşünüyoum. Umarın iyi anlatabilmişimdir. :)
Yukarda try-catch yapısını anlattım . Bunlara kardes birde finally komutu var. Try komutu ile hata yakalayıp catch bloğuna atarız. Duruma göre try veya catch blokları çalışabilir. Finally komutu ise hata olsun olmasın her türlü çalışan komuttur. Bir nevi kraldır diyebiliriz. Sorun varmış yokmuş hayatta umrunda olmaz. Polemiğe girmeden çalışmasına devam eder. Şimdi bir örnekle bunu açıklayalım.
<?php
try {
throw new Exception("Burada kafama göre bir hata oluşturdum.");
} catch (Exception $e) {
echo $e->getMessage();
} finally {
echo "<br>";
echo "Yukardaki sorunlar umrumda değil beni ekranda her türlü göreceksiniz.";
}
?>
بورس
03-June-2023Hi! I could have sworn I've been to this website before but after checking through some of the post I realized it's new to me. Nonetheless, I'm definitely happy I found it and I'll be bookmarking and checking back frequently!