Kontrol yapıları belli şartları kontrol ederek şartların sağlanması durumunda belli kod bloglarını çalıştıran ya da sağlanmaması durumunda ise başka kod bloglarını çalıştıran yapılardır. Kontrol yapıları genellikle karşılaştıma operatörleriyle birlikte kullanılırlar ve sonucun doğru mu yoksa yanlış mı döndüğüne bakarlar.
PHP dilinde iki adet kontrol yapısı vardır. Bunlar;
1- İf – Else Yapısı : İf-Else yapısı yani Türkçe tercümesi ile Eğer-Değilse yapısında if komutu ile yapı başlar if sorgusundan hemen sonra karşılaştırma ve mantıksal operatörler ile sınama yapılır ve sınamadan sonra değer TRUE yani doğru dönerse if sorfusundan sonra yazılan kod bloğu çalışır. ardından else komutu gelir. Eğer değer FALSE dönerse, else parantezi içerisinde yazılı kodlar çalışır.
Örnek Kod:
1 2 3 4 5 6 7 8 9 10 |
<?php $sayi1 = 1; // sayı1 adında değişken oluştur ve 1 değerini ata $sayi2 = 2; // sayi2 adında değişken oluştur ve 2 değerini ata if( $sayi1 < $sayi2 ){ // sayi1, sayi2'den küçük mü? echo "Sınama Doğru"; // sayi1, sayi2'den küçük ise ekrana "Sınama Doğru" yaz } else { // Değilse yani sayi1, sayi2'den küçük değilse echo "Sınama Yanlış"; // ekrana "Sınama Yanlış" yaz } ?> |
Yukarıdaki yapımızda sayi1 değişkenine atadığımız değer sayi2 değişkenine atadığımız değerden küçük olduğu için, ekrana “Sınama Doğru” yazılacaktır.
Birde “else if” komutumuz var. Bu komutla surguyu daha da genişletebiliriz.
1 2 3 4 5 6 7 8 9 10 11 12 |
<?php $sayi2 = 2; // sayi2 adında değişken oluştur ve 2 değerini ata $sayi3 = 3; // sayi3 adında değişken oluştur ve 3 değerini ata if($sayi2 == $sayi3){ // eğer sayi2 ve sayi3 birbirine eşit ise echo "sayi2, sayi3 ye eşittir"; // ekrana sayı2, sayi3 e eşittir yaz } else if ($sayi2 < $sayi3) { // değilse, sayi2, sayi3 den küçükse echo "sayı2, sayi3 e küçüktür"; // ekrana sayı2, sayi3 den küçüktür yaz } else { // yukarıdakilerin hiç biri değilse echo "sayi2, sayi3 den büyüktür"; // ekrana sayı2, sayi3 den büyüktür yaz } ?> |
Switch – Case Yapısı : switch – case yapısı switch alanında belirtilen değişken değerini her bir case yapısındaki koşul ile karşılaştırır. karşılaştırma sonucunda eşitlik sağlanan case alanındaki kod çalıştırılır ve karşılaştırma break komutuyla sona erer. Eğer case değerlerinde eşitlik sağlanmamışsa, default kapsamındaki kodlar çalıştırılır.
Örnek Kod:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
<?php $x = 5; switch($x){ // switch komutu ile kontrol başlar case 1: // $x değişkeni değeri 1 mi evet ise alt satırdaki kod çalışır, değilse bir sonraki case yapısına geçer echo "x değeri 1 e eşittir"; // ekrana "x değeri 1 e eşittir" yaz break; // sorgudan çık case 2: // $x değişkeni değeri 2 mi evet ise alt satırdaki kod çalışır, değilse bir sonraki case yapısına geçer echo "x değeri 2 ye eşittir"; // ekrana "x değeri 2 ye eşittir" yaz break; // sorgudan çık case 3: // $x değişkeni değeri 3 mü evet ise alt satırdaki kod çalışır, değilse bir sonraki case yapısına geçer echo "x değeri 3 e eşittir"; // ekrana "x değeri 3 e eşittir" yaz break; // sorgudan çık case 4: // $x değişkeni değeri 4 mü evet ise alt satırdaki kod çalışır, değilse bir sonraki case yapısına geçer echo "x değeri 4 e eşittir"; // ekrana "x değeri 4 e eşittir" yaz break; // sorgudan çık case 5: // $x değişkeni değeri 5 mi evet ise alt satırdaki kod çalışır, değilse bir sonraki case yapısına geçer echo "x değeri 5 e eşittir"; // ekrana "x değeri 5 e eşittir" yaz break; // sorgudan çık default: // Eğer yukarıdaki case yapılarında eşitlik sağlanamadıysa alt satırdaki kod çalışır echo "x değeri 1 ile 5 arasında değildir"; // ekrana "x değeri 1 ile 5 arasında değildir" yaz } ?> |