PHP’de Switch Deyimi

SWİTCH DEYİMİ
Türçe karşılığı anahtar olan switch deyimi if deyimi gibi görev yapar.Ama siwtch deyimini if deyimininin yerine kullanmamız daha uygun düşer.Bazı hız araştırmalarında switch deyiminin if deyiminden daha hızlı çaılştığı söyleniyor.Ama şunuda belirteyim: Switch ile yaptıklarımızın hepsini if ile yaparız ama if in yaptığı herşeyi switch deyimi yapamaz.Tek değişken tutar.Oysa if deyiminde birçok değer tutması mümkündür.Switch deyiminin yazılışı şöyledir.

 
switch ( $değişken ) {
case 1.şart;
1. Şart doğru ise yapılacak işler
break;
case 2.şart;
2. şart doğru ise yapılacak işler
break;
case 3. şart;
3. şart doğru ise yapılacak işler
break;
default:
Bu şartların hiçbiri doğru değilse yapılacak işlere
}

Burada görüldüğü gibi switch deyimi tek değişken tutabiliyor.İf deyiminde bulunan else burada karşımıza default olarak karşımıza çıkıyor ve default dan sonra iki nokta üst üste konulduğuna dikkat edin.Sonra her şatın gerçekleşmesinden sonra break koyuyoruz.Bunun her şarttın gerçekleşmesinden sonra break “Türkçe karşlığı kırılmak, kopmak” koyuyoruz.Çünkü bu break komutun gerçekleştiğini ve bundan sonra PHP’ye okuma yapmamasını söylüyor.

 
switch ( $sehir ){
case "istanbul";
print "Seçtiğiniz şehir <b>$sehir</b>";
break;
case "Ankara";
print "Seçtiğiniz şehir <b>$sehir</b>";
break;
case "Rize";
print "Seçtiğiniz şehir <b>$sehir</b>";
break;
default:
print "Herhangi bir şehir seçmediniz";
}

Görüldüğü gibi switch in içerisine $sehir değişkeni koyuyoruz ve sonra case ile bu değişkenin değerlerini belirliyoruz.Daha sonrada koşulun gerçekleşmesi durumunda programı durdurmak için break komutunu kullanıyoruz.En sonunda da hiçbir koşul gerçekleşmemesi durumunda default dan sonra ki satır devreye giriyor. Birde şunu belirteyim PHP büyük ve küçük harf ayrımı yapar.Mesela rize ile Rize aynı değildir.Onun için programlarınızı yazarken bu ayrıma dikkar ediniz.son olarak switch ile if deyiminin ayrıldığı nokta olan birçok değişken tutması konusunda bir örnek vereim.

 
if ( $ad=="mehmet" and $soyad=="şamlı"){
print "Doğru";
}
else{
print "Yanlış";
}

Burada görüldüğü gibi if deyimi ile iki değişkenli bir koşul yaptık.Burada bilmediğimiz kenime and “türkçe karşılığı ve, ile” dir.Yani burada PHP’ye diyoruzki $ad değişkeni mehmet ve$soyad değişkenide şamlı ise şunu yap.Yok doğru değilse bunu yap.İki veya daha fazla değişkenlerin birlikte kullanıldığı yerlerde kullanabileceğimiz özel ayraçlar:

== Eşitse $a == $b
!= Eşit değilse $a != $b
=== Aynı ise $a === $b
> Büyükse $a > $b
< Küçükse $a < $b
<= Küçükse veya eşitse $a <= $b
>= Büyükse veya eşitse $a >= $b
and İkiside doğru ise $a==”a” and $b==”b”
or Herhangi biri doğru ise $a==”a” or $b==”b”
&& İkiside doğru ise $a==”a” && $b==”b”
|| Herhangi bir doğru ise $a==”a” || $b==”b”

Bu özel ayraçları genelde ifdeyimi ile kullanırız.Şimdi alternatif bir switch deyiminin nasıl yazılacağını görelim.

 
switch ($meyvalar):
case "muz";
print "$meyvalar sadece anamurda yetişir";
break;
case "mandalina";
print "$meyvalar akdenizde ve doğu karadenizde yetişir";
break;
case "kivi":
print "$meyvalar genelde Rize'de yetiştirilir";
break;
default:
print "Bir meyva adı seçmediniz.";
endswitch;

Burada da görüldüğü gibi switch deyiminin alternatif kullanımı if deyimininkine benziyor.Burada $meyvalar değişkenine case ile 3 farklı değer tanımladık.Bunların gerçekleşmemesi durumunda da default devreye giriyor.

Be the first to comment

Leave a Reply

Your email address will not be published.


*