PHP'de kontrol yapıları (if,else if,switch/case)

Dikkat: Bu yazının yazılma tarihinin üzerinden en az 60 gün geçmiş. İçerisindeki bilgiler güncelliğini yitirmiş olabilir. Yorumları ve güncellemeleri göz önünde bulundurarak yazıyı takip ediniz.

Kontrol Yapıları

Kontrol yapıları programların neredeyse her 5 kodundan birinde vardır. Çünkü kontroller şartlar değiştiğinde sonuçları değiştiren yapılardır. Eğer böyle bişey olmasa idi program diye birşey olmaz statik yapılar olurdu. Kontrol yapıları çok çeşitlidir. Ancak sık kullanılan 2-3 tanesini ele alacağım.

if Kontrolü

Basit bir yapıdır. Basitçe kullanımı :
if( koşullar ){
  print 'koşul sağlandı';
}
şeklindedir. Koşullar gerçeklendiği sürece işlemler yapılacaktır.

if else Kontrolü

if kontrolüne koşulun olmadığı zaman da görev verilenidir.
if( koşullar ){
  print 'koşul sağlanıyor';
}else{
  print 'koşul sağlanmıyor';
}

if else if kontrolü

Bir if else kontrolünde else yani ilk koşulun sağlanmaması halindeki duruma bir if eklenirse yani üsttekilerin sağlanmaması ve burada tanımlanan koşulun sağlanması halidir.
if( ilk koşullar ){
  // ilk koşular sağlanıyorsa yapılacaklar
  print 'bir';
}else if( ikinci koşullar ){
  // ilk koşullar sağlanmıyor ve ikinci koşullar sağlanıyorsa yapılacaklar
  print 'iki';
}else if( üçüncü koşullar ){
  print 'üç';
  // ilk ve ikinci koşullar sağlanmıyor ve üçüncü koşullar sağlanıyorsa yapılacaklar

}else{
  // hiçbiri sağlanmıyorsa yapılacaklar
  print 'bir, iki ve üç DEĞİL!';
}

switch / case Yapısı

switch / case yapısını çok sonuçlu olayları kontrol ederken kullanırız. Mesela bir olay sonucu $deg değişkeni 3 değer alabilsin ("1x","2x","3x"). Burada if'leri kullanmaktansa switch / case yapılarını kullanmak daha kısadır.
switch($deg){
  case '1x' : print "deg'in içi 1x";break;
  case '2x' : print "deg'in içi 2x";break;
  case '3x' : print "deg'in içi 3x";break;
  default : print "deg'in içi 1x,2x,3x değil";
}
Kontrol yapıları aslında programlamada en sık kullanılan yapılardır. Farkında olmadan çok kez bu yapıları defalarca defalarca yazarız. Kullanımlarını, esnekliklerini iyi bilmek gerektiğini düşünüyorum.


Hazırlayan : Mehmet Fatih YILDIZ

Yorumlar

Üye Resmi serkan gül
12 Ocak Cumartesi ´08 21:31
teşekürler hocam yazılarının devamını beleriz...
Üye Resmi Sinan KÖSE
9 Ekim Perşembe ´08 10:38
Bilgilerden dolayı çok teşekkür ederim.
Üye Resmi ali can özer
20 Ekim Pazartesi ´08 21:59
teşekkürler
Üye Resmi nihat kaya
7 Ocak Çarşamba ´09 01:16
çok güzel açıklamışsınız üstad
Üye Resmi irem derin özer
20 Kasım Cuma ´09 11:24
çookk çokk teşkkürr edermmm =)
Üye Resmi asim
2 Ağustos Pazartesi ´10 16:27
hocam sizden bişey rica etsem if içinde if kullanmayı öğretecek güzel bir örenek verebilirseniz size teşşekürlerimi borç bilirim iyi çalışmalar
2 Ağustos Pazartesi ´10 21:04
Zaten kendin demişsin if içinde if diye.Aşağıya bir örnek yazdım.Umarım anlarsın...

<?php
$ad="mete";
$soyad="oncu";
if($ad=="mete"){
if($soyad="oncu"){
echo "İsim ve soyisim doğru";
}else{
echo "İsim doğru ama soyad yanlış";
}
}else{
echo "İsim yanlış";
}
?>
28 Ocak Cuma ´11 20:40
Çok teşekkür ederim .
Üye Resmi cuneytayyar
12 Kasım Cumartesi ´11 19:29
ağzınIza sağlık

switch($deg){
  case '1x' : print "deg'in içi 1x";break;
  case '2x' : print "deg'in içi 2x";break;
  case '3x' : print "deg'in içi 3x";break;
  default : print "deg'in içi 1x,2x,3x değil";
}

Burada 1x,2x,3x gibi ardışık ifadeleri/sayıları otomatik artırmanın yolu yok mudur? case içinkonuşuyorum
Üye Resmi enesgenc
8 Ocak Pazar ´12 11:58
10 tane elamanı olan not ismindeki dizi değişkeni değerlerini kontrol ettirip 45'den büyük olanları saydıran ve sınıfın başarısını %'e olarak veren, php script kodunu yazınız ?
arkadaşlar lütfen yardım edin
Üye Resmi twitteri
9 Mart Cuma ´12 00:03
alone


<?php
$ad="mete";
$soyad="oncu";
if($ad=="mete" && $soyad="oncu" ){
echo "İsim ve soyisim doğru";
}else{
echo "İsim doğru ama soyad yanlış";
}
}else{
echo "İsim yanlış";
}
?>

bu daha mantıklı olur
Yeni Yorum *
İletişim Bilgileri
*
*
E-Posta adresiniz gösterilmeyecektir.
(unut)
Güvenlik Kodu *

Gönderiliyor