percabanganif-elseswitchdasarPemula3 mnt baca

If, Else, dan Switch

Mengambil keputusan di kode: percabangan if/elseif/else, switch, dan match expression modern.

if / elseif / else

php
<?php
$nilai = 85;

if ($nilai >= 90) {
    echo "A";
} elseif ($nilai >= 75) {
    echo "B";
} elseif ($nilai >= 60) {
    echo "C";
} else {
    echo "D";
}

Perhatikan ejaannya elseif (satu kata) atau else if (dua kata), keduanya valid di PHP.

switch

Cocok kalau satu variabel dibandingkan dengan banyak kemungkinan nilai:

php
<?php
$hari = "Senin";

switch ($hari) {
    case "Senin":
        echo "Awal pekan, semangat!";
        break;
    case "Jumat":
        echo "Besok libur!";
        break;
    default:
        echo "Hari biasa.";
}

Jangan lupa break, kalau tidak, eksekusi akan "jatuh" ke case berikutnya.

match (PHP 8+)

Versi modern yang lebih ketat dan ringkas, mengembalikan nilai langsung:

php
<?php
$hari = "Jumat";

$pesan = match ($hari) {
    "Senin" => "Awal pekan, semangat!",
    "Jumat" => "Besok libur!",
    default => "Hari biasa.",
};
echo $pesan;

Catatan teknis: switch membandingkan dengan == (longgar), sedangkan match memakai === (ketat). Contoh: switch menganggap case 0 cocok dengan string "php", tapi match tidak. Kalau datamu campur string dan angka, match lebih aman dari kejutan.