Struktur Kontrol If Sudah mulai terbiasa dengan PHP? OK, kali ini kita belajar lebih dalam lagi. Minggu ini PCplus akan memperkenalkan bagaimana cara skrip PHP mengambil keputusan dengan struktur kontrol If. Struktur kontrol If ini memiliki beberapa variasi, yaitu: If If ... Else If ... ElseIf ... Else Kita mulai dari yang paling sederhana, yaitu If. Struktur kontrol If digunakan untuk mengambil keputusan apabila hanya ada sebuah kondisi yang memerlukan pengambilan keputusan. Jika kondisi tersebut bernilai true, maka skrip program yang terletak di dalam blok if akan dieksekusi, sedangkan jika false, maka blok program tersebut akan dilewati. Sintaks dari struktur kontrol If adalah sebagai berikut: If (kondisi) pernyataan; atau If (kondisi) { pernyataan; pernyataan; } Sebagai contoh penggunaan struktur kontrol If ini akan diberikan sebuah skrip yang sederhana sebagai berikut: <TITLE> Struktur IF $tes = true; echo("Nilai \$tes = $tes"); echo("
"); if ($tes == true) { echo('Teks ini muncul karena nilai $tes = true'); } ?>
Simpan dengan nama if.php. Jika dijalankan pada browser hasilnya akan nampak seperti gambar 1. Jika nilai $tes Anda ganti dengan false, maka yang muncul pada browser hanyalah tulisan “Nilai $tes =”. Mengapa demikian? Skrip PHP menggantikan nilai true dengan 1 dan false dengan 0 atau tidak ada nilai sama sekali. Perhatikan baikbaik fungsi echo() yang muncul pada skrip tersebut. Ada tiga fungsi echo() yang muncul, dua yang pertama menggunakan tanda petik ganda dan yang terakhir menggunakan tanda petik tunggal. Anda bisa perhatikan perbedaan yang terjadi pada hasil yang muncul di browser. Perhatikan juga tanda sama dengan pada pernyataan if ($tes == true) ada dua! Hal ini berbeda dengan pernyataan pada bagian awal skrip yaitu $tes = true. Pernyataan $tes = true adalah pemberian nilai variabel, sehingga tanda sama dengannya hanyalah satu. Tapi pada pernyataan if ($tes == true) sifatnya adalah membandingkan apakah nilai $tes adalah true, sehingga tanda sama dengannya ada dua. Jangan sampai Anda lupa pada aturan ini, karena PHP mendukung pemberian nilai variabel langsung pada sebuah pernyataan. Jadi jika Anda menuliskan if ($tes = true) – hanya dengan satu tanda sama dengan – itu sama artinya dengan memberi nilai $tes dengan true. Akibatnya struktur kontrol if tersebut akan selalu bernilai true sehingga jalannya skrip secara keseluruhan akan salah. Bentuk kedua dari struktur kontrol if adalah if ... else. Sintaks dari struktur kontrol ini adalah sebagai berikut: If (kondisi) { pernyataan1; } else { pernyataan2; } Penggunaan struktur if ... else mirip dengan penggunaan struktur if, namun memiliki kelebihan yaitu alternatif tindakan apabila kondisi yang dihadapi tidak sesuai. Sebagai contoh akan diberikan penggunaan skrip PHP untuk menentukan apakah sebuah bilangan bersifat genap atau ganjil. <TITLE> Struktur IF ... ELSE $bilangan = 5; $tes = $bilangan % 2; if ($tes == 1) { echo("Bilangan $bilangan adalah ganjil"); } else { echo("Bilangan $bilangan adalah genap"); }
?> Simpan skrip tersebut dengan nama ifelse.php. Jika dijalankan pada browser hasilnya adalah seperti pada gambar 2. Pada skrip tersebut terdapat operator dengan karakter persen (%) yang berarti adalah modulus. Modulus adalah proses pembagian dua bilangan dengan mengambil sisa pembagian sebagai hasilnya. Jadi jika ada persamaan y = 10 % 3, berarti nilai y adalah 1 karena 10 dibagi 3 menghasilkan 3 dengan sisa pembagian 1. Dalam skrip di atas penentuan apakah sebuah bilangan merupakan bilangan ganjil atau genap adalah dengan membaginya dengan dua. Jika sisa pembagian adalah 1 maka bilangan tersebut adalah bilangan ganjil. Jika tidak – artinya sisa pembagian adalah 0 – maka bilangan tersebut adalah bilangan genap. Bentuk ketiga dari struktur kontrol if adalah if ... elseIf ... else. Struktur ini juga hampir sama dengan kedua struktur di atas, hanya saja memberikan lebih banyak kemungkinan kondisi dan keputusan yang diambil. Sintaksnya adalah sebagai berikut: If (kondisi1) { Pernyataan1; } Elseif (kondisi2) { Pernyataan2; . . . } Elseif (kondisiN) { PernyataanN; } else { pernyataan; } Contoh penggunaan If…ElseIf…Else adalah sebagai berikut: <TITLE> ELSE IF $a = 5; $b = 7; echo("\$a = $a
"); echo("\$b = $b
"); if ($a < $b) { echo('$a lebih kecil daripada $b'); } elseif ($a == $b) {
echo('$a sama dengan $b'); } else {
echo('$a lebih besar daripada $b');
} ?> Simpanlah skrip tersebut dengan nama elseif.php. Jika dijalankan pada browser hasilnya akan nampak seperti gambar 3. Pada contoh di atas dibandingkan dua buah bilangan yaitu a dan b. Proses pembandingan tersebut akan memberikan 3 kemungkinan, yaitu a lebih kecil daripada b, a sama dengan b, dan a lebih besar daripada b. Struktur kontrol if juga mengenal bentuk alternatif. Bentuk alternatif tersebut adalah dengan mengganti tanda kurung kurawal ({}) dengan tanda titik dua (:) dan di akhir blok ditutup dengan endif. Jadi contoh ketiga di atas dapat dituliskan dengan bentuk sebagai berikut: <TITLE> ELSE IF $a = 5; $b = 7; echo("\$a = $a
"); echo("\$b = $b
"); if ($a < $b) : echo('$a lebih kecil daripada $b'); elseif ($a == $b) : echo('$a sama dengan $b'); else: echo('$a lebih besar daripada $b'); endif; ?> Minggu depan kita lanjutkan dengan bentuk struktur kontrol yang lain. Ciao.