PHP ile kodlama yaparken oluşan hataları yakalamak veya çeşitli kontroller sonucu olumsuz dönen sonuçlara farklı işlemler uygulayabilmek için try catch yapısını kullanabiliriz. Try-catch yapısı mantık olarak if else kullanımına benzese de aslında bize çok daha sağlıklı bir kontrol mekanizması sunar. Daha sağlıklı bir yapı çünkü try bloğu içerisinde if kontrolleri ile oluşacak hataları catch bloğuna göndererek çeşitli işlemler yapabilmemiz mümkün. Kısacası try bloğu içerisinde yakalanan hatalar catch bloğuna gönderilerek ortaya çıkan çıkan hata ile ilgili işlemler yapılabilir. Bu sayede tekrar tekrar yaptığımız kontroller ile daha ciddi hatalar oluşmasının önüne geçebiliriz.

PHP'de Try Catch Kullanımı

try {
     $sayi= 10;
     if ( $sayi > 10 ) {
          throw new exception('Sayı 10dan küçük olduğu için hatalı.');
     }
     echo 'Sayı 10dan büyük olduğu için uygun.';
} catch (Exception $hata) {
     echo "Hata: " . $hata->getMessage();
}

/*
Yukarıdaki örnekte $sayi 10dan küçük olduğu için 'throw new exception' ile catch yapısına hata mesajı gönderiyoruz.
Ayrıca hata gönderdiğimiz satırda kod bloğu çalışmayı durduruyor.

Sonuç olarak ekrana aşağıdaki çıktıyı veriyor.
Hata: Sayı 10dan küçük olduğu için hatalı.
*/

try {
     $sayi= 15;
     if ( $sayi > 10 ) {
          throw new exception('Sayı 10dan küçük olduğu için hatalı.');
     }
     echo 'Sayı 10dan büyük olduğu için uygun.';
} catch (Exception $hata) {
     echo "Hata: " . $hata->getMessage();
}

/*
Bu örnekte ise $sayi 10dan büyük olduğu için hata oluşmuyor ve kod bloğu çalışmaya devam ediyor.

Sonuç olarak ekrana aşağıdaki çıktıyı veriyor.
Sayı 10dan büyük olduğu için uygun.
*/

İki farklı PHP try catch yapısı örneğinde görüldüğü gibi eğer bir hata yakalayıp gönderirsek try bloğu çalışmayı kesip catch bloğu devreye giriyor. Eğer hata yakalamazsak sorunsuzca try bloğu çalışmaya devam ediyor. Bu sayede oluşacak hataları daha kontrollü bir şekilde işlemiş oluyoruz.