PHP Switch ifadesi, bir değişkenin farklı olasılıklarına göre hangi işlemin yapılacağını belirleyen bir kontrol yapısıdır. Birden fazla if-else
bloğunun yerine geçerek, kodun daha okunabilir ve anlaşılır olmasını sağlar. switch
ifadesi, genellikle bir değişkenin farklı değerlerine göre farklı bloklar çalıştırmak için kullanılır.
PHP switch
ifadesinin temel yapısı şu şekildedir:
switch (değişken) {
case değer1:
// değer1 ile eşleşirse çalışacak kod
break;
case değer2:
// değer2 ile eşleşirse çalışacak kod
break;
case değer3:
// değer3 ile eşleşirse çalışacak kod
break;
default:
// Hiçbir case ile eşleşmezse çalışacak kod
}
switch
: Kontrol edilen değişkeni belirtir.case
: Değişkenin alabileceği olası değerleri belirtir.break
: Durum eşleştiğinde, kodun o noktada durmasını sağlar. Eğer break
komutu kullanılmazsa, kod diğer case
bloklarını da çalıştırmaya devam eder (bu duruma "fall-through" denir).default
: Hiçbir case
ile eşleşmeyen durumlar için çalışacak olan kodu belirtir. Bu bölüm opsiyoneldir.$renk = "kırmızı";
switch ($renk) {
case "kırmızı":
echo "Renk kırmızı.";
break;
case "yeşil":
echo "Renk yeşil.";
break;
case "mavi":
echo "Renk mavi.";
break;
default:
echo "Bilinmeyen renk.";
}
Bu örnekte, $renk
değişkeni "kırmızı" olduğunda, "Renk kırmızı." mesajı ekrana yazdırılır.
$puan = 85;
switch (true) {
case ($puan >= 90):
echo "Harika! A+";
break;
case ($puan >= 80):
echo "Başarılı! A";
break;
case ($puan >= 70):
echo "İyi! B";
break;
case ($puan >= 60):
echo "Geçer! C";
break;
default:
echo "Maalesef, başarısız.";
}
Burada, $puan
değişkeninin değerine göre farklı değerlendirmeler yapılır. switch (true)
kullanılarak, her bir case
koşulu bir karşılaştırma içerir.
$gun = 3;
switch ($gun) {
case 1:
echo "Pazar günü";
break;
case 2:
echo "Pazartesi günü";
break;
case 3:
case 4:
case 5:
echo "Hafta içi bir gün.";
break;
default:
echo "Geçersiz gün.";
}
Bu örnekte, 3, 4 ve 5 numaralı günler için aynı mesaj verilir. case 3:
, case 4:
, ve case 5:
arasındaki kod "fall-through" (geçiş) özelliğiyle birleştirilmiştir.