CodeBlanks Logo Icon CodeBlanks

else ve elseif

PHP kursu · Başlangıç · Ders 37/116

Alternatif durumlar için else ve elseif zincirlerini öğrenirsin.

else ve elseif

if koşulu yanlışsa farklı bir kod çalıştırmak için else dalını kullanırsın. Birden fazla koşulu sırayla denemek için elseif yazarsın; ilk doğru koşulun bloğu çalışır, diğerleri atlanır.

Örneğin not değerlendirmesi: 85 ve üzeri 'pekiyi', 70-84 'iyi', 50-69 'geçer', altı 'kaldı'. Her aralık kendi elseif dalında kontrol edilir, en son else geri kalanı yakalar.

elseif zinciri

Bir elseif zincirinde PHP koşulları yukarıdan aşağı sırayla dener. İlk true olan dal çalışır; o andan sonraki tüm elseif ve else dalları atlanır. Hiçbir koşul doğru değilse son else çalışır.

Bu yüzden dalları en özelden en genele doğru sıralamak iyidir. Önce küçük aralığı kontrol edersen büyük aralık yanlışlıkla onu yutabilir.

Uygulama Not değerlendirme

$grade değişkeni zaten tanımlı. Bir if/elseif/else zinciri yaz: $grade >= 85 ise 'pekiyi', $grade >= 70 ise 'iyi', $grade >= 50 ise 'geçer', diğer durumda 'kaldı' yazdır. echo ile yazdır.

Örnek çözümü göster
Üç koşullu dal ve bir else yaz.
Örnek çözüm:
<?php
$grade = 78;
// Not değerlendirme
if ($grade >= 85) {
  echo 'pekiyi';
} elseif ($grade >= 70) {
  echo 'iyi';
} elseif ($grade >= 50) {
  echo 'geçer';
} else {
  echo 'kaldı';
}

Kendini test et

  1. $score = 72; ile hangi dal çalışır?

    $score = 72;
    if ($score >= 85) {
      echo 'pekiyi';
    } elseif ($score >= 70) {
      echo 'iyi';
    } elseif ($score >= 50) {
      echo 'geçer';
    } else {
      echo 'kaldı';
    }
    • pekiyi
    • iyi
    • geçer
    • kaldı
    Cevabı göster

    iyi — Doğru. 72, 70-84 aralığında olduğu için 'iyi' yazdırılır.

  2. elseif anahtar kelimesini yaz

    $score = 72;
    if ($score >= 85) {
      echo 'pekiyi';
    } ____ ($score >= 70) {
      echo 'iyi';
    } else {
      echo 'kaldı';
    }
    Cevabı göster
    $score = 72;
    if ($score >= 85) {
      echo 'pekiyi';
    } elseif ($score >= 70) {
      echo 'iyi';
    } else {
      echo 'kaldı';
    }
  3. $n = 2; ile hangi dal çalışır?

    $n = 2;
    if ($n > 10) {
      echo 'A';
    } elseif ($n > 3) {
      echo 'B';
    } elseif ($n > 1) {
      echo 'C';
    } else {
      echo 'D';
    }
    • A
    • B
    • C
    • D
    Cevabı göster

    C — Doğru. 2, 1'den büyük ama 3'ten değil; bu yüzden C dalı çalışır.

Başlangıç bölümündeki tüm dersler