PHP programlama dilinde koşul yapıları, belirli şartlara bağlı olarak farklı işlemlerin gerçekleştirilmesini sağlar. Web geliştirme sürecinde kullanıcı girişlerini kontrol etmek, sınav sonuçlarını değerlendirmek, yaş sınırlarını belirlemek ve farklı durumlara göre işlem yapmak için koşul ifadelerinden sıkça yararlanılır.
PHP'de en çok kullanılan koşul yapıları if, if-else ve if-elseif-else ifadeleridir. Bu yapılar sayesinde programın çalışma akışı kontrol edilebilir ve belirli koşullara göre farklı sonuçlar elde edilebilir.
PHP If Yapısı
PHP'de if yapısı, belirtilen koşul doğru olduğunda çalıştırılacak kodları tanımlamak için kullanılır. Koşul doğruysa ilgili kod bloğu çalışır; yanlışsa bu blok atlanır ve program çalışmaya devam eder.
If yapısının genel söz dizimi şu şekildedir:
<?php
if (koşul) {
// Koşul doğruysa çalışacak kodlar
}
?>
Bu yapıda if anahtar kelimesinden sonra parantez içerisinde kontrol edilecek koşul yazılır. Koşulun doğru olması durumunda süslü parantezler arasındaki kodlar çalıştırılır.
Örneğin, bir kişinin yaşının 18 veya daha büyük olup olmadığını kontrol etmek için aşağıdaki kod kullanılabilir:
<?php
$yas = 20;
if ($yas >= 18) {
echo "18 yaşından büyüksünüz veya 18 yaşındasınız.";
}
?>
Bu örnekte $yas değişkenine 20 değeri atanmıştır. if koşulunda kişinin yaşının 18'e eşit veya büyük olup olmadığı kontrol edilir. Koşul doğru olduğu için ekrana ilgili mesaj yazdırılır.
Eğer $yas değişkeninin değeri 16 olsaydı koşul yanlış olacağından ekrana herhangi bir mesaj yazdırılmayacaktı. Çünkü yalnızca if yapısı kullanıldığında koşulun yanlış olması durumunda çalışacak ayrı bir kod bloğu tanımlanmamıştır.
PHP If Else Yapısı
if-else yapısı, bir koşulun doğru veya yanlış olmasına göre iki farklı işlem yapılmasını sağlar. Koşul doğru olduğunda if bloğu, yanlış olduğunda ise else bloğu çalıştırılır. If-else yapısının genel söz dizimi şu şekildedir:
<?php
if (koşul) {
// Koşul doğruysa çalışacak kodlar
} else {
// Koşul yanlışsa çalışacak kodlar
}
?>
Bu yapıda program önce if içerisindeki koşulu kontrol eder. Koşul doğruysa ilk blok çalıştırılır. Koşul yanlışsa else bloğundaki işlemler gerçekleştirilir. Aynı koşul değerlendirmesinde bu iki bloktan yalnızca biri çalışır.
Örneğin, bir öğrencinin sınavdan geçip geçmediğini kontrol eden program şu şekilde yazılabilir:
<?php
$not = 40;
if ($not >= 50) {
echo "Sınavı geçtiniz.";
} else {
echo "Sınavdan kaldınız.";
}
?>
Bu örnekte öğrencinin notu 40 olduğu için $not >= 50 koşulu yanlıştır. Bu nedenle if bloğu yerine else bloğu çalışır ve ekrana "Sınavdan kaldınız." mesajı yazdırılır.
Not değişkeninin değeri 75 olarak değiştirilirse koşul doğru olur ve ekrana "Sınavı geçtiniz." mesajı yazdırılır.
If-else yapısı, iki farklı sonuç arasında karar verilmesi gereken durumlarda oldukça kullanışlıdır. Kullanıcı bilgilerinin doğrulanması, şifre kontrolü ve sayıların karşılaştırılması bu yapının kullanılabileceği alanlara örnek olarak gösterilebilir.
PHP If Elseif Else Yapısı
Bir programda ikiden fazla koşulun kontrol edilmesi gerektiğinde if-elseif-else yapısı kullanılır. Bu yapı sayesinde birden fazla koşul sırayla değerlendirilir ve doğru olan ilk koşulun kod bloğu çalıştırılır. If-elseif-else yapısının genel söz dizimi şu şekildedir:
<?php
if (birinci_kosul) {
// Birinci koşul doğruysa
} elseif (ikinci_kosul) {
// İkinci koşul doğruysa
} elseif (ucuncu_kosul) {
// Üçüncü koşul doğruysa
} else {
// Hiçbir koşul doğru değilse
}
?>
Burada if ilk koşulu kontrol eder. İlk koşul yanlışsa elseif ile belirtilen diğer koşullara geçilir. Koşullardan biri doğru olduğunda ilgili kod bloğu çalıştırılır ve aynı zincirdeki sonraki koşullar değerlendirilmez. Tüm koşullar yanlışsa else bloğu çalıştırılır.
Örneğin, sınav notuna göre öğrencinin başarı durumunu belirleyen bir program aşağıdaki gibi yazılabilir:
<?php
$not = 75;
if ($not >= 85) {
echo "Pekiyi";
} elseif ($not >= 70) {
echo "İyi";
} elseif ($not >= 50) {
echo "Geçer";
} else {
echo "Kaldınız";
}
?>
Bu örnekte öğrencinin notu 75'tir. İlk koşul olan $not >= 85 yanlış olduğu için ikinci koşula geçilir. $not >= 70 koşulu doğru olduğundan ekrana "İyi" mesajı yazdırılır. Diğer koşullar artık kontrol edilmez.
Bu örnekte koşulların büyük not değerinden küçük not değerine doğru sıralanması önemlidir. Koşullar yanlış sırayla yazılırsa daha genel bir koşul, daha özel koşullardan önce doğru olabilir ve beklenmeyen sonuçlar ortaya çıkabilir.
PHP If, If Else ve If Elseif Else Arasındaki Farklar
PHP'de bu üç koşul yapısının temel amacı, programın belirli durumlara göre farklı işlemler gerçekleştirmesini sağlamaktır. Ancak kullanım amaçları birbirinden farklıdır.
- If: Yalnızca koşul doğru olduğunda bir işlem yapılması gerekiyorsa kullanılır.
- If-else: Koşulun doğru ve yanlış olmasına göre iki farklı işlem yapılması gerekiyorsa kullanılır.
- If-elseif-else: Birden fazla koşulun sırayla kontrol edilmesi ve farklı sonuçların üretilmesi gerekiyorsa kullanılır.
Örneğin, bir sayının 10'dan büyük olup olmadığını kontrol etmek için if yapısı yeterlidir. Sayı 10'dan büyükse bir mesaj, değilse başka bir mesaj gösterilecekse if-else yapısı tercih edilir. Bir sayının pozitif, negatif veya sıfır olup olmadığını belirlemek içinse if-elseif-else yapısı kullanılabilir.
PHP Koşul Yapılarında Kullanılan Karşılaştırma Operatörleri
Koşul ifadelerinde değişkenleri ve değerleri karşılaştırmak için karşılaştırma operatörlerinden yararlanılır. Bu operatörler, koşulun doğru veya yanlış olarak değerlendirilmesini sağlar.
En sık kullanılan karşılaştırma operatörleri şunlardır:
| Operatör |
Açıklama |
| == |
Değerlerin eşit olup olmadığını kontrol eder. |
| === |
Değerlerin ve veri türlerinin eşit olup olmadığını kontrol eder. |
| != |
Değerlerin eşit olmadığını kontrol eder. |
| > |
Sol taraftaki değerin büyük olup olmadığını kontrol eder. |
| < |
Sol taraftaki değerin küçük olup olmadığını kontrol eder. |
| >= |
Büyük veya eşit olma durumunu kontrol eder. |
| <= |
Küçük veya eşit olma durumunu kontrol eder. |
Örneğin:
<?php
$sayi = 10;
if ($sayi == 10) {
echo "Sayı 10'a eşittir.";
}
?>
Bu kodda $sayi == 10 ifadesi, değişkenin değerinin 10 olup olmadığını kontrol eder. Koşul doğru olduğunda ekrana ilgili mesaj yazdırılır.
Burada dikkat edilmesi gereken önemli bir ayrıntı vardır: Tek eşittir işareti (=) değişkene değer atamak için kullanılırken çift eşittir (==) karşılaştırma yapmak için kullanılır. Üç eşittir (===) ise hem değerin hem de veri türünün aynı olmasını gerektirir.
PHP Koşul Yapılarında Mantıksal Operatörler
Bazen birden fazla koşulun aynı anda kontrol edilmesi gerekir. Bu gibi durumlarda mantıksal operatörler kullanılır. PHP'de en yaygın mantıksal operatörler &&, || ve ! şeklindedir.
&& operatörü, birden fazla koşulun tamamının doğru olmasını gerektirir. || operatörü, koşullardan en az birinin doğru olması durumunda doğru sonuç verir. ! operatörü ise bir koşulun mantıksal sonucunu tersine çevirir.
Örneğin, bir kullanıcının yaşının en az 18 olması ve ehliyet sahibi olması durumunda araç kullanabileceğini belirten basit bir kontrol şu şekilde yazılabilir.
<?php
$yas = 22;
$ehliyet = true;
if ($yas >= 18 && $ehliyet == true) {
echo "Koşullar sağlanmıştır.";
} else {
echo "Koşullar sağlanmamıştır.";
}
?>
Bu örnekte iki koşul da doğru olduğu için if bloğu çalışır. Koşullardan biri yanlış olsaydı else bloğu çalıştırılırdı.
PHP'de if, if-else ve if-elseif-else yapıları, programların karar verme mekanizmasını oluşturan temel kontrol ifadeleridir. Doğru koşul yapısının seçilmesi, kodların daha anlaşılır ve düzenli olmasını sağlar.
Yalnızca tek bir koşulun kontrol edilmesi gereken durumlarda if, iki farklı sonucun bulunduğu durumlarda if-else, birden fazla olasılığın değerlendirilmesi gereken durumlarda ise if-elseif-else yapısı kullanılabilir. Bu yapıların karşılaştırma ve mantıksal operatörlerle birlikte doğru şekilde kullanılması, PHP ile dinamik ve etkileşimli web uygulamaları geliştirmek için önemli bir temel oluşturur.