"/>"/>
Yazılım Dilleri
Asp.Net 4.5 Kitabı
Skip Navigation Links

PHP If-Else ve Switch-Case Yapıları

PHP'de koşul ifadelerinin (IF-ELSE ve SWITCH-CASE) kullanımının nasıl olduğunu inceleyelim.

 Bu makalemizde PHP’de if-else, switch-case yapılarını inceleyeceğiz.

 
Önce if-else yapısını bir örnek üzerinde inceleyelim.
 
 
  1. <?php
  2.             $sayi = 10;
  3.             if($sayi == 10){
  4.                         echo "Dogru";
  5.             }
  6.             else{
  7.                         echo "Yalnis";
  8.             }
  9. ?>
 
if-else yapısı diğer programlama dillerindekine benzer şekilde oluşturulmaktadır.
 
IF-ELSE yapısındaki koşul operatörlerine göz atalım.
 
$x == $y
$x’in değeri, $y’nin değerine eşit mi kontrol eder
$x === $y
$x, $y’ye eşit mi kontrol eder
$x != $y
$x’in değeri, $y’nin değerine eşit değil mi kontrol eder
$x <> $y
$x’in değeri, $y’nin değerine eşit değil mi kontrol eder
$x !== $y
$x, $y’ye eşit değil mi kontrol eder.
$x < $y
$x’in değeri $y’nin değerinden küçük mü kontrol eder.
$x > $y
$x’in değeri $y’nin değerinden büyük kontrol eder.
$x <= $y
$x’in değeri $y’nin değerinden küçük eşit mi kontrol eder.
$x >= $y
$x’in değeri $y’nin değerinden büyük eşit mi kontrol eder.
 
Burada, birçok programlama dilinde olmayan bir koşul ifadesi söz konusudur : ===
 
Bunu basit bir örnekle inceleyelim: Değişkenlerle sayı oluşturalım ve bu sayıların değerlerini karşılaştırıp sonuçlarına göre === ne anlama geliyor daha iyi kavrayalım.
 
İlk örneğimiz:
 
 
  1. <?php
  2.             $sayi = 10;
  3.             $sayi2 = 10;
  4.             if($sayi == $sayi2){
  5.                         echo("Esit");
  6.             }
  7.             else{
  8.                         echo("Esit Degil");
  9.             }
  10. ?>
 
 
Tamsayı tipinde iki değişken oluşturduk ve bunların == ile karşılaştırmasını yaptık. Çalıştırdığımızda aşağıdaki sonuç ortaya çıkacaktır.
 
 
Şimdi bu değişkenleri === ile karşılaştıralım.
 
 
  1. <?php
  2.             $sayi = 10;
  3.             $sayi2 = 10;
  4.             if($sayi === $sayi2){
  5.                         echo("Esit");
  6.             }
  7.             else{
  8.                         echo("Esit Degil");
  9.             }
  10. ?>
 Çalıştırdığımızda ekran çıktısı aşağıdaki gibi olacaktır.
 
 
Değişkenlerimizin tipi de değerleri de aynı olduğu için iki örneğimizde de “Esit” sonucu ekrana gelmiştir. Şimdi kodumuzu şu şekilde düzenleyip == ile karşılaştırma yapalım:
 
 
  1. <?php
  2.             $sayi = 10;
  3.             $sayi2 = "10";
  4.             if($sayi == $sayi2){
  5.                         echo("Esit");
  6.             }
  7.             else{
  8.                         echo("Esit Degil");
  9.             }
  10. ?>
 
Örneği incelediğimizde, $sayi1 ve $sayi2 değişkenlerinin türleri farklı (int, string) fakat değerleri aynı. Yukarıdaki tabloda dikkat ettiyseniz == için değerlerini karşılaştırıyor demiştik. Kodumuz bu şekildeyken çalıştırdığımızda aşağıdaki ekran çıktısını alacağız çünkü iki değişkenin de değeri 10’dur.
 
 
Şimdi aynı örneği === ile çalıştıralım.
 
 
  1. <?php
  2.             $sayi = 10;
  3.             $sayi2 = "10";
  4.             if($sayi === $sayi2){
  5.                         echo("Esit");
  6.             }
  7.             else{
  8.                         echo("Esit Degil");
  9.             }
  10. ?>
 
Ekran çıktısı aşağıdaki gibi olacaktır.
 
 
Sonucun böyle gelmesinin nedeni, ===’in tiplerin eşitliğini de kontrol etmesidir. İki değişkenin değerleri aynı fakat tipleri farklı olduğu için “Esit Degil” sonucu ekranda yazmıştır.
 
Şimdi bir diğer koşul ifadesi olan switch-case’e  ve if-else yapısında else-if’in kullanıma bir arada göz atalım.
 
Örneğin içeri gelen bir kişinin ismine göre kim geldiyse onun geldiğini ekranda yazan bir işlem yapalım. Bunu önce if-else bloklarıyla yapalım:
 
 
  1. $isim = "veysel";
  2. if($isim == "veysel"){
  3.             echo("veysel geldi");
  4. }
  5. else if($isim == "ugur"){
  6.             echo("ugur geldi");
  7. }
  8. else if($isim == "engin"){
  9.             echo("engin geldi");
  10. }
  11. else{
  12.             echo("kim geldi?");
  13. }
 
if ve else if’lerdeki koşullara uyan varsa uyan bloğu çalıştırıp başkasına bakmadan çıkar. Eğer hiçbir koşuş uymuyorsa else bloğu çalışacaktır.
 
Şimdi aynı örneği switch-case ile yapalım:
 
 
  1. $isim = "veysel";
  2. switch($isim){
  3.             case "veysel":
  4.                        echo "veysel geldi";
  5.                        break;
  6.             case "ugur":
  7.                        echo "ugur geldi";
  8.                        break;
  9.             case "engin":
  10.                        echo "engin geldi";
  11.                        break;
  12.             default:
  13.                        echo "kim geldi";
  14.                        break;
  15. }
 
 
Switch-case yapısında ise switch(değişken), case’in yanında ise değişkenin karşılaştırılacağı değerler yazılıp kontrol yapılır. IF-ELSE ile benzer yapıda çalışmaktadır.
 
Bir sonraki makalemizde PHP’de döngülere göz atacağız.
 
 
 
Veysel Uğur KIZMAZ
Bilgisayar Mühendisi
 

Yorumlar (0)

Yorum Yap

Mail listesine katılmak için tıklayınız

Hakkımdaki son bilgilere anlık erişmek için mail listesine katılabilirsiniz.