Php’de Switch Case Kullanımı

17 Aralık 2014 - 152 Okunma
Php’de Switch Case Kullanımı
Switch deyimi, aynı ifade içerisinde yer alan IF deyimine benzer. Aynı değişkeni birden çok değerle karşılaştırmak istediğinizde, Eğer IF kullanmayacaksanız Switch işinizi görecektir. Switch genelde 3’den fazla karşılaştırmalarda kullanılır. Yani belli bir sayıdan fazla koşulumuz varsa Switch Case kullanmak en mantıklısıdır. Bu deyimin işleyiş süreci yukarıdaki gibidir. Bu deyimin kurallarını basitçe anlatmak gerekirse; Switch yapısı […]

Switch deyimi, aynı ifade içerisinde yer alan IF deyimine benzer. Aynı değişkeni birden çok değerle karşılaştırmak istediğinizde, Eğer IF kullanmayacaksanız Switch işinizi görecektir. Switch genelde 3’den fazla karşılaştırmalarda kullanılır.

Yani belli bir sayıdan fazla koşulumuz varsa Switch Case kullanmak en mantıklısıdır.

// Yeni Türde
switch (koşul) :
    case değer1:
     Değer bu koşul için dogru ise yapılacak olan işlemler;
    break;
    case değer2:
     Değer bu koşul için dogru ise yapılacak olan işlemler;
    break;
    case değer3:
     Değer bu koşul için dogru ise yapılacak olan işlemler;
    break;
    case değer4:
     Değer bu koşul için dogru ise yapılacak olan işlemler;
    break;
    case değer5:
     Değer bu koşul için dogru ise yapılacak olan işlemler;
    break;
   default:
     Değer yukarıdaki koşullar için dogru değilse yapılacak olan işlemler;
endswitch;

// Eski türde
switch (koşul) {
case değer1:
    Değer bu koşul için dogru ise yapılacak olan işlemler;
    break;
case değer2:
    Değer bu koşul için dogru ise yapılacak olan işlemler;
    break;
case değer3:
    Değer bu koşul için dogru ise yapılacak olan işlemler;
    break;
case değer4:
     Değer bu koşul için dogru ise yapılacak olan işlemler;
    break;
    case değer5:
     Değer bu koşul için dogru ise yapılacak olan işlemler;
    break;
   default:
     Değer yukarıdaki koşullar için dogru değilse yapılacak olan işlemler;
}
// Yeni tür, eski tür diye ayrım yaptık
// Çünkü eskiden süslü parantez denilen { ve } kullanılırken
// Şimdilerde yeni türde kullanılan yaygınlaşmaya başlamıştır

Bu deyimin işleyiş süreci yukarıdaki gibidir. Bu deyimin kurallarını basitçe anlatmak gerekirse;

  • Switch yapısı satır satır (deyim deyim) ele alınır. İlk başta hiçbir kod çalıştırılmaz. Sadece switch ile birlikte verilen değer ile eşleşen bir case deyimi bulunduğunda php ilgili bölümdeki kodları çalıştırır. Switch son Case‘e gelene kadar vaya ilk break komutu ile karşılaşıncaya kadar çalışmaya devam eder.
  • Case satırında bir işlem belirtilmemiş olabilir. Bu durumda PHP bir sonraki Case‘e geçer.
  • Case satırında Break te yazılmamış olabilir. Case ‘in sonuna break koymazsak, php bir sonraki case ten devam eder.
  • Eğer Case‘lerin hiçbiri gereken koşulu sağlamıyorsa, default satırında yer alan işlem çalıştırılır.
  • Bu yapıda default satırı ve case‘de break komutu tanımlama zorunluluğu yoktur.
  • Eğer case‘lerde yer alan değerlerin hiçbiri koşul’u sağlamıyorsa ve Switch‘e tanımlı bir default satırı yoksa Switch kalıbı bir işlem yapmadan sona erer.
  • Bu yapıda değerler integer, string yada float olabilir.

Şimdiye kadar öğrendiklerimizi canlı bir örnekle aklımızda şekillendirelim.

// bir tane değişkenimiz olduğunu düşünün
$de1 = 2;
switch ($de1) {
case 0:
    echo "de1 değişkeni eşittir 0";
    break;
case 1:
    echo "de1 değişkeni eşittir 1";
    break;
case 2:
    echo "de1 değişkeni eşittir 2";
    break;
case 3:
    echo "de1 değişkeni eşittir 3";
    break;
default :
   echo "de1 değişkeni 0,1,2,3,4 rakamlarından herhangi birine eşit değildir";
}

// Sonuç

// de1 değişkeni eşittir 2

// olarak ekrana basılacaktır

Hatalardan kaçınmak için switch deyiminin nasıl çalıştığını kavramak önemlidir. Bu yüzden yapı ve örneği iyice incelemek gereklidir.

ITC | İlkteknoloji