STRUKTUR KONTROL
Struktur Kontrol Adanya beberapa kondisi yang mengharuskan alur program bercabang dengan memilih satu dari beberapa kondisi yang tersedia sebelum berlanjut ke alur program berikutnya. Untuk membantu pengambilan keputusan mana alur program yang harus di pilih, dibutuhkan sesuatu yang disebut struktur kontrol.
Struktur Kontrol Php If If … else If … elseif …. Else Switch while Do..while For Foreach Break continue
If If (kondisi) Pernyataan; Jika pernyataan 2 baris atau lebih maka : }
If <?php $a=9; $b=8; if ($a > $b){ echo “<br><center><font size=6> variable a = $a <br> variable b = $b </font></center>"; echo "<br><br><br><center><font size=6> \$a lebih besar daripada\$b </font></center>";} ?>
If
If … Else If (kondisi) { pernyataan1; } else pernyataan2;
If … Else <?php $a=13; $b=9; echo "<br><center><font size=6> variable a = $a <br> variable b = $b </font></center>"; if ($a < $b) { echo "<br><br><br><center> <font size=6> \$a lebih kecil daripada \$b </font></center>";} else <font size=6> \$a lebih besar daripada \$b </font></center>";} ?>
If … Else
If … Elseif …Else If (kondisi1) { pernyataan1; } elseif (kondisi2) …. elseif (kondisiN) pernyataanN; else pernyataan;
If … Elseif …Else <?php $a=13; $b=13; echo "<br><center><font size=6> variable a = $a <br> variable b = $b</font></center>"; if ($a < $b) { echo "<br><br><br><center> <font size=6> \$a lebih kecil daripada \$b </font></center>";} elseif ($a == $b) <font size=6> \$a sama dengan \$b </font></center>";} else { echo "<br><br><br><center> <font size=6> \$a lebih besar daripada \$b </font></center>";} ?>
If … Elseif …Else
SWITCH switch (variabel) { case nilai1: pernyataan1; break; case nilaiN: pernyataanN; [default : pernyataan] }
SWITCH <?php $a=13; echo "<br><center><font size=6> variable a = $a </font></center>"; switch ($a) { case 0: echo '<br><br><br><center> <font size=6> $a sama dengan 0 </font></center>'; break; case 1: echo '<br><br><br><center> <font size=6> $a sama dengan 1 </font></center>'; case 2: echo '<br><br><br><center> <font size=6> $a sama dengan 2 </font></center>'; default: echo '<br><br><br><center> <font size=6> $a tidak sama dengan 0, 1, atau 2 </font></center>'; } ?>
SWITCH Contoh ini sebanding dengan skrip berikut :
Program pembanding <?php $a=13; echo "<br><center><font size=6> variable a = $a </font></center>"; if ($a == 0) { echo '<br><br><br><center> <font size=6> $a sama dengan 0 </font></center>';} elseif ($a == 1) { echo '<br><br><br><center> <font size=6> $a sama dengan 1 </font></center>';} elseif ($a == 2) { echo '<br><br><br><center> <font size=6> $a sama dengan 2 </font></center>';} else { echo '<br><br><br><center> <font size=6> $a tidak sama dengan 0, 1, atau 2 </font></center>';} ?>
Hasil program pembanding
Pernyataan break Pernyataan break harus diberikan pada setiap pilihan. Jika tidak, maka program akan menjalankan pernyataan pada pilihan selanjutnya. Berikut contoh skripnya :
Switch tanpa break <?php $a=0; echo "<br><center><font size=6> variable a = $a </font></center>"; switch ($a) { case 0: echo '<br><br><br><center> <font size=6> $a sama dengan 0 </font></center>'; case 1: echo '<br><br><br><center> <font size=6> $a sama dengan 1 </font></center>'; case 2: echo '<br><br><br><center> <font size=6> $a sama dengan 2 </font></center>'; default: echo '<br><br><br><center> <font size=6> $a tidak sama dengan 0, 1, atau 2 </font></center>'; } ?>
Switch tanpa break
Switch vs if..elseif..else Pilihan kondisi : if ($a == 0 ), ($a == 1), ($a == 2) Merupakan nilai yang pasti. Untuk pilihan kondisi yang berupa jangkauan nilai, misal $a < 5, maka struktur switch tidak dapat digunakan, tetapi harus menggunakan if..elseif..else.
WHILE While (kondisi) { pernyataan; }
While <?php echo "<br><font size=6> cara pertama :</font><br>"; $a = 1; while ($a <= 10) { print $a++;} echo "<br><br><font size=6> cara kedua : </font><br>"; { print $a; $a++;} ?>
While
Do….while Do { pernyataan; } while (kondisi);
Do..while <?php $a = 1; do { echo "<center><font size=5>\$a = $a </font></center><br>"; $a++; } while ($a < 9); ?>
Do..while
FOR For (awal;akhir;langkah) { Pernyataan; }
For <?php for ($a = 1; $a <= 13; $a++) { print $a; } ?>
For
FOREACH Foreach(array as $value) { Pernyataan; } Foreach(array as $key => $value)
Foreach <?php // model pertama // $a = array (1,2,3,4); foreach ($a as $v) { print "Nilai dari \$a= $v. <br>"; } echo "<br>"; // model kedua // $b = 0; print " \$a[$b] => $v. <br>"; $b++; echo "<br>"; // model ketiga // $a = array ( "satu" => 1, "dua" => 2, "tiga" => 3, "empat" => 4); foreach ($a as $k => $v) { print " \$a[$k] => $v. <br>"; } ?>
Foreach
STRUKTUR KONTROL TERSARANG For ($a=1; $a <= 5; $a++) { For ($b=1; $b <= 3; $b++) $i = $a * $b; echo “\$i = $i”; }
Struktur kontrol tersarang
BREAK <html> <head> <title>break</title></head> <body bgcolor=#FFFFFF> <? For ($i=1; $i <= 10; $i++) { if ($i == 6) { break; } echo “\$i = $i <br>”; ?> </body> </html>
Break
BREAK $i = 0; while (++$i) { switch ($i) case 5 : echo “\$i = 5 <br>”; break 1; //break untuk switch saja case 10 : echo “\$i = 10; berhenti <br> ”; break 2; //break untuk switch dan while default: break; }
Break
CONTINUE <html> <head> <title>continue</title></head> <body bgcolor=#FFFFFF> <? For ($i=1, $i <= 10, $i++) { if ( ! ( $i % 2 )) continue; } echo “\$i = $i <br>”; ?> </body> </html>
Continue
SINTAKS ALTERNATIF Mengganti kurung kurawal { } dengan titik dua (:) Penutup digunakan pernyataan end yang langsung disambung dengan struktur yang digunakan. Contoh : If ($a == 5): lakukan ini; else: lakukan itu; Endif; For ($a=1;$a<=10;$a++): lakukan sesuatu; Endfor; While ($a<=10): Endwhile;