Logika Pemrograman PHP: Menggunakan Kondisi IF, ELSE, dan SWITCH (Part 5)
Rifqi An
Halo sobat ngoding dan calon master PHP! Balik lagi nih di seri tutorial kesayangan kita, Belajar Dasar PHP. Gimana kabar keyboard dan kopi kalian? Masih aman kan setelah kemarin kita bahas operator-operator yang bikin pusing? Tenang, kali ini kita mau bahas sesuatu yang jauh lebih seru dan bikin program kalian jadi punya "otak": Logika Pemrograman PHP: Menggunakan Kondisi IF, ELSE, dan SWITCH (Part 5)!
Pernah bayangin kalau hidup kita lurus-lurus aja tanpa pilihan? Mau makan, ya makan aja, nggak peduli lapar atau kenyang. Mau tidur, ya tidur aja, nggak peduli ngantuk atau baru bangun. Nggak seru, kan? Nah, begitu juga program! Tanpa kondisi, program kita cuma bisa jalan satu jalur, tanpa bisa membuat keputusan. Di artikel ini, kita akan belajar gimana caranya bikin program PHP kalian punya daya nalar sendiri. Siap ngopi lagi? Yuk, langsung gas!
Daftar Isi
- Apa Itu Kondisi (Conditional Statements)?
- IF Statement: Kalau Begini, Maka Begitu
- IF-ELSE Statement: Kalau Nggak Begini, Ya Begitu
- IF-ELSE IF-ELSE Statement: Pilihan Berantai Tanpa Henti (Kayak Utang)
- SWITCH Statement: Alternatif Elegan Buat Pilihan Banyak
- Kapan Pakai IF, Kapan Pakai SWITCH?
- Kesimpulan: Program Kalian Sekarang Lebih Cerdas!
- Latihan: Studi Kasus Ngoding Receh
Apa Itu Kondisi (Conditional Statements)?
Intinya, conditional statements atau pernyataan kondisi ini adalah "otak" program kalian. Mereka memungkinkan program untuk membuat keputusan berdasarkan suatu kondisi yang true (benar) atau false (salah). Mau ngecek apakah user sudah login? Pakai kondisi. Mau nampilin diskon kalau pembelian di atas Rp 100.000? Pakai kondisi. Gampang, kan? Hidup kita sebagai programmer itu memang nggak jauh-jauh dari true dan false, plus bug yang tiba-tiba true padahal harusnya false. Heuheu.
IF Statement: Kalau Begini, Maka Begitu
Ini adalah kondisi paling dasar di dunia per-ngoding-an. Sintaksnya mirip kayak kalian lagi mikir: "KALAU hujan, MAKA saya pakai payung." Simpel, kan?
Strukturnya di PHP kayak gini:
<?php
$nilai = 80;
if ($nilai >= 75) {
echo "Selamat! Anda lulus ujian. Giliran ngopi-ngopi nih!";
}
?>
Di contoh di atas, kalau variabel $nilai itu lebih dari atau sama dengan 75 (kondisinya true), maka tulisan "Selamat! Anda lulus ujian..." akan muncul. Kalau $nilai di bawah 75? Ya udah, programnya cuek aja, nggak ngapa-ngapain. Mirip gebetan kalau lagi nggak tertarik. Sedih ya.
IF-ELSE Statement: Kalau Nggak Begini, Ya Begitu
Nah, kalau IF saja rasanya kurang puas, kita bisa pakai IF-ELSE. Ini kayak "KALAU hujan, MAKA saya pakai payung. TAPI KALAU TIDAK hujan, MAKA saya pakai topi." Ada alternatifnya gitu. Lebih baik daripada PHP yang tiba-tiba error karena nggak dikasih pilihan.
Contohnya:
<?php
$umur = 17;
if ($umur >= 18) {
echo "Anda boleh memilih presiden. Jangan golput ya!";
} else {
echo "Anda masih di bawah umur. Main game aja dulu, jangan mikirin politik.";
}
?>
Dengan IF-ELSE, selalu ada satu blok kode yang akan dieksekusi. Kalau kondisi IF true, blok IF jalan. Kalau false, blok ELSE yang jalan. Jadi, nggak ada lagi program yang bingung mau ngapain. Mantap!
IF-ELSE IF-ELSE Statement: Pilihan Berantai Tanpa Henti (Kayak Utang)
Kadang hidup ini penuh pilihan, bukan cuma dua. Ada A, B, C, sampai Z. Nah, untuk skenario multi-pilihan seperti ini, kita butuh IF-ELSE IF-ELSE. Mirip banget sama ketika kita lagi milih makan siang di kantin, banyak banget pilihannya sampai bingung. Tapi kalau ini program, dia nggak akan bingung!
Lihat nih contoh rating nilai:
<?php
$nilaiUjian = 92;
$grade;
if ($nilaiUjian >= 90) {
$grade = "A (Keren banget, calon sarjana!)";
} elseif ($nilaiUjian >= 80) {
$grade = "B (Lumayan, bisa lah buat pamer ke ortu)";
} elseif ($nilaiUjian >= 70) {
$grade = "C (Cukup, yang penting lulus!)";
} else {
$grade = "D (Waduh, butuh les tambahan nih kayaknya)";
}
echo "Nilai Anda: " . $nilaiUjian . ", Grade: " . $grade;
?>
PHP akan mengecek kondisi dari atas ke bawah. Begitu ada kondisi yang true, blok kode di dalamnya akan dieksekusi dan pengecekan berhenti. Kalau nggak ada yang true sama sekali, barulah blok else terakhir yang akan jadi penutup. Ribet dikit, tapi fleksibel banget!
SWITCH Statement: Alternatif Elegan Buat Pilihan Banyak
Kalau kalian punya banyak banget kondisi elseif yang cuma ngecek satu variabel dengan nilai yang berbeda-beda, SWITCH bisa jadi penyelamat hidup! Sintaksnya lebih rapi dan kadang lebih mudah dibaca daripada tumpukan if-elseif-else yang panjangnya kayak kereta api.
Bayangin kalau kalian lagi bikin aplikasi kasir dan mau kasih diskon berdasarkan jenis barang. Daripada pakai if-elseif banyak banget, mending pakai SWITCH:
<?php
$hari = "Minggu";
$aktivitas;
switch ($hari) {
case "Senin":
$aktivitas = "Saatnya ngoding lagi setelah weekend!";
break;
case "Selasa":
case "Rabu":
case "Kamis":
$aktivitas = "Lembur ngurus bug, sambil ngopi.";
break;
case "Jumat":
$aktivitas = "Siap-siap weekend, tapi deadline masih banyak.";
break;
case "Sabtu":
$aktivitas = "Ngopi santai, review kode temen.";
break;
case "Minggu":
$aktivitas = "Mageran seharian, atau ngerjain side project.";
break;
default:
$aktivitas = "Hari apa ini? Kayaknya salah input deh.";
break;
}
echo "Hari ini hari " . $hari . ". Aktivitas: " . $aktivitas;
?>
Keren kan SWITCH ini? Dia akan mencocokkan nilai dari variabel $hari dengan setiap case. Kalau cocok, blok kode di case itu akan dieksekusi. Jangan lupa break; ya! Kalau nggak pakai break;, PHP bakal lanjut terus ke case berikutnya sampai ketemu break; atau sampai blok switch-nya habis. Ini sering jadi sumber bug receh pas lagi ngoding dan bikin kita bingung sendiri. Kalau case nggak ada yang cocok, blok default yang akan dieksekusi.
Kapan Pakai IF, Kapan Pakai SWITCH?
Nah, ini pertanyaan sejuta umat programmer junior. Kapan sih pakai yang mana? Nggak ada aturan baku yang mutlak, tapi ada pedoman umumnya:
- Pakai IF-ELSE IF-ELSE kalau kalian punya kondisi yang melibatkan range angka (misal:
>= 90,< 50), atau kondisi yang lebih kompleks (misal:$userLoggedIn && $isAdmin). Singkatnya, kalau kondisinya butuh operator perbandingan (>,<,>=,<=) atau operator logika (&&,||). - Pakai SWITCH kalau kalian cuma ngecek satu variabel untuk nilai-nilai yang spesifik (misal:
"Senin","Admin",100). Ini biasanya lebih rapi dan performanya sedikit lebih baik untuk banyak pilihan tunggal.
Pada akhirnya, pilih mana yang menurut kalian lebih mudah dibaca dan dimengerti. Clean code itu penting, apalagi kalau kode kalian nanti di-copas sama temen satu tim. Ups, maksudnya di-review!
Kesimpulan: Program Kalian Sekarang Lebih Cerdas!
Gimana, sobat ngoding? Sekarang program PHP kalian sudah punya "otak" sendiri kan buat bikin keputusan? Dengan IF, ELSE, dan SWITCH, kalian bisa bikin aplikasi yang jauh lebih interaktif dan responsif terhadap input dari user atau kondisi-kondisi tertentu. Ini fundamental banget lho buat jadi programmer handal!
Ingat, praktek adalah kunci. Jangan cuma dibaca, langsung coba ngoding sendiri! Di part selanjutnya, kita akan bahas tentang perulangan atau looping. Siap-siap buat bikin program yang bisa kerja berulang-ulang tanpa capek (nggak kayak kita yang harus ngopi terus)! Sampai jumpa di Part 6!
Latihan: Studi Kasus Ngoding Receh
Biar nggak cuma teori, yuk kita latihan! Kali ini kita akan bantu Pak Budi, pemilik warung kopi "Ngoding Bareng", untuk membuat sistem diskon otomatis. Pak Budi ingin memberikan diskon berdasarkan total pembelian pelanggan dengan ketentuan sebagai berikut:
- Jika total pembelian di atas Rp 200.000, diskon 20%.
- Jika total pembelian di antara Rp 100.000 sampai Rp 200.000 (inklusif Rp 100.000), diskon 10%.
- Jika total pembelian di bawah Rp 100.000, tidak ada diskon (Pak Budi kan butuh modal buat beli biji kopi).
- Tapi, ada promo spesial! Kalau ada pelanggan yang namanya
"Bagas", dia dapat diskon tambahan 5% (dari harga setelah diskon pertama, kalau ada) karena dia selalu bayar pakai QRIS dan sering lembur di warung kopi Pak Budi.
Tugas kalian adalah membuat kode PHP untuk menghitung total yang harus dibayar pelanggan. Coba deh pakai kombinasi IF dan ELSE IF untuk diskon, dan mungkin IF terpisah untuk promo nama Bagas.
Input Contoh:
<?php
$namaPelanggan = "Bagas"; // Coba ganti ke nama lain juga!
$totalPembelian = 250000; // Coba ganti angka lain!
// Kode kalian di sini...
?>
Output yang Diharapkan (jika $namaPelanggan = "Bagas", $totalPembelian = 250000):
Halo Bagas, total belanja Anda Rp 250000. Setelah diskon 20% dan diskon spesial 5%, total yang harus dibayar adalah Rp 190000. Terima kasih sudah ngopi di Ngoding Bareng!
Selamat mencoba, ya! Kalau ada bug atau error, jangan panik. Itu cuma kode kalian lagi ngajak ngopi bareng!
