Hari 5: If/Else & Switch
55 min
Last updated 09 Apr 2026
If / Elseif / Else
$nilai = 78;
if ($nilai >= 90) {
echo "A — Istimewa";
} elseif ($nilai >= 80) {
echo "B — Baik";
} elseif ($nilai >= 70) {
echo "C — Cukup";
} elseif ($nilai >= 60) {
echo "D — Kurang";
} else {
echo "E — Gagal";
}
Operator Ternary & Null Coalescing
// Ternary: kondisi ? jika_true : jika_false
$status = ($nilai >= 60) ? "Lulus" : "Tidak Lulus";
echo $status; // Lulus
// Null coalescing (??) — PHP 7+
$username = $_GET["user"] ?? "Tamu";
echo $username; // "Tamu" jika $_GET["user"] tidak ada
Switch
$hari = "Senin";
switch ($hari) {
case "Senin":
case "Selasa":
echo "Awal minggu"; break;
case "Rabu":
echo "Tengah minggu"; break;
case "Sabtu":
case "Minggu":
echo "Weekend!"; break;
default:
echo "Hari lainnya";
}
// Output: Awal minggu
Match Expression (PHP 8+)
$grade = match(true) {
$nilai >= 90 => "A",
$nilai >= 80 => "B",
$nilai >= 70 => "C",
default => "D",
};
echo $grade; // C
💡
Notice: Gunakan elseif (bukan else if) di PHP. Ternary: kondisi ? true : false.
Assignment
Buat sistem grade: $nilai = 82. Jika >= 90 cetak "A", >= 80 cetak "B", >= 70 cetak "C", >= 60 cetak "D", sisanya cetak "E". Juga cetak "Lulus" jika nilai >= 60, "Tidak Lulus" jika tidak (baris baru).
Expected output:
B
Lulus
PHP
index.php
Solution
Output