Karar Yapıları (Koşullu İfadeler)
PHP'de karar yapıları (koşullu ifadeler) bir kod bloğunun belirli bir koşulun doğru (true) veya yanlış (false) olmasına bağlı olarak çalıştırılmasını sağlayan temel programlama yapılarıdır. Bu yapılar sayesinde programlarınız dinamikleşir ve farklı durumlara göre farklı çıktılar verebilir.
if Yapısı:
En temel karar yapısıdır. Belirtilen koşul doğruysa, if bloğu içindeki kod çalıştırılır.
Kod:
[HR][/HR]
[HR][/HR][Yukarıdaki kod yapısı, yas değişkeni içindeki veriyi incelemekte. yas verisi 18'e eşit veya büyükse ekrana Reşitsiniz yazacak]
if...else Yapısı:
if koşulu yanlış olduğunda çalıştırılacak alternatif bir kod bloğu tanımlamanızı sağlar.
Kod:
[HR][/HR]
[HR][/HR][Yukarıdaki kod yapısı, not değişkeni içindeki veriyi incelemekte. not verisi 70'e eşit veya büyükse ekrana Geçtiniz, 69 ve aşağısı ise ekrana Kaldınız yazacak]
else: if koşulu false olduğunda, else bloğu içindeki kod çalıştırılır.
if...elseif...else Yapısı:
Birden fazla koşulu kontrol etmek ve farklı koşullara göre farklı kod bloklarını çalıştırmak için kullanılır. elseif (veya else if) ile istediğiniz kadar ek koşul belirtebilirsiniz.
Kod:
[HR][/HR]
[HR][/HR][Yukarıdaki kod yapısı, ortalama değişkeni içindeki veriyi incelemekte. ortalama verisi 85'e eşit veya büyükse ekrana Pekiyi, 70-84 aralığında ise İyi, ortalama verisi 50-69 aralığında ise Orta ve ortalama verisi 49 ve aşağısı ise ekrana Zayıf yazacak]
switch Yapısı:
Bir değişkenin değerini belirli sabit değerlerle karşılaştırmak ve buna göre farklı kod bloklarını çalıştırmak için kullanılır. Özellikle çok sayıda olası duruma sahip olduğunuzda if...elseif zincirine göre daha okunabilir olabilir.
Kod:
[HR][/HR]
[HR][/HR]
Koşullu İfadelerde Kullanılan Operatörler
Koşulları oluştururken çeşitli operatörler kullanılır:
PHP'de karar yapıları (koşullu ifadeler) bir kod bloğunun belirli bir koşulun doğru (true) veya yanlış (false) olmasına bağlı olarak çalıştırılmasını sağlayan temel programlama yapılarıdır. Bu yapılar sayesinde programlarınız dinamikleşir ve farklı durumlara göre farklı çıktılar verebilir.
if Yapısı:
En temel karar yapısıdır. Belirtilen koşul doğruysa, if bloğu içindeki kod çalıştırılır.
Kod:
[HR][/HR]
Kod:
<?php
$yas = 25;
if ($yas >= 18) {
echo "Reşitsiniz.";
}
?>
if...else Yapısı:
if koşulu yanlış olduğunda çalıştırılacak alternatif bir kod bloğu tanımlamanızı sağlar.
Kod:
[HR][/HR]
Kod:
<?php
$not = 65;
if ($not >= 70) {
echo "Geçtiniz.";
} else {
echo "Kaldınız.";
}
?>
else: if koşulu false olduğunda, else bloğu içindeki kod çalıştırılır.
if...elseif...else Yapısı:
Birden fazla koşulu kontrol etmek ve farklı koşullara göre farklı kod bloklarını çalıştırmak için kullanılır. elseif (veya else if) ile istediğiniz kadar ek koşul belirtebilirsiniz.
Kod:
[HR][/HR]
Kod:
<?php
$ortalama = 55;
if ($ortalama >= 85) {
echo "Pekiyi";
} elseif ($ortalama >= 70) {
echo "İyi";
} elseif ($ortalama >= 50) {
echo "Orta";
} else {
echo "Zayıf";
}
?>
switch Yapısı:
Bir değişkenin değerini belirli sabit değerlerle karşılaştırmak ve buna göre farklı kod bloklarını çalıştırmak için kullanılır. Özellikle çok sayıda olası duruma sahip olduğunuzda if...elseif zincirine göre daha okunabilir olabilir.
Kod:
[HR][/HR]
Kod:
<?php
$gun = "Pazartesi";
switch ($gun) {
case "Pazartesi":
echo "Haftanın ilk günü.";
break;
case "Salı":
case "Çarşamba":
echo "Hafta içi bir gün.";
break;
case "Cumartesi":
case "Pazar":
echo "Hafta sonu.";
break;
default:
echo "Geçersiz gün.";
}
?>
- switch (değişken): Hangi değişkenin değerine göre karar verileceğini belirtir.
- case değer: Değişkenin alabileceği olası sabit değerleri belirtir. Eğer değişkenin değeri bu case'deki değerle eşleşirse, bu case'in altındaki kod çalıştırılır.
- break;: Bir case bloğu çalıştırıldıktan sonra switch yapısından çıkılmasını sağlar. Eğer break unutulursa, sonraki case blokları da koşul kontrolü yapılmaksızın çalıştırılır ("fall-through" davranışı).
- default:: Yukarıdaki hiçbir case ile eşleşme olmadığında çalıştırılacak isteğe bağlı bir bloktur.
Koşullu İfadelerde Kullanılan Operatörler
Koşulları oluştururken çeşitli operatörler kullanılır:
- Karşılaştırma Operatörleri:
== (Eşit): İki değerin eşit olup olmadığını kontrol eder.
=== (Denk): İki değerin hem değerinin hem de tipinin eşit olup olmadığını kontrol eder.
!= veya <> (Eşit Değil): İki değerin eşit olmadığını kontrol eder.
!== (Denk Değil): İki değerin değerinin veya tipinin eşit olmadığını kontrol eder.
> (Büyüktür)
< (Küçüktür)
>= (Büyük Eşittir)
<= (Küçük Eşittir) - Mantıksal Operatörler:
&& veya and (VE): Her iki koşul da doğruysa true döner.
|| veya or (VEYA): Koşullardan en az biri doğruysa true döner.
! veya not (DEĞİL): Koşulun tersini alır. Doğruysa false, yanlışsa true döner.