As’ad Djamalilleil http://kampusku.my.id asad.kom@gmail.com Referensi Bahasa (4) As’ad Djamalilleil http://kampusku.my.id asad.kom@gmail.com
Control Structure
Statement if if (expr) statement expr statement true false
Jika hasil evaluasi expr bernilai TRUE, maka PHP akan menjalankan statement, dan jika hasil evaluasi bernilai FALSE, maka statement tidak akan dijalankan if ($a > $b) echo "a lebih besar dari b"; Contoh di atas akan menampilkan “a lebih besar dari b” jika nilai $a lebih besar dari $b
Untuk menjalankan lebih dari satu statement, beberapa buah statement dapat dijadikan sebuah grup statement if ($a > $b) { echo "a lebih besar dari b"; $b = $a; }
Statement if dapat dibuat bersarang dalam statement if yang lain, sehingga memberikan fleksibilitas dalam menjalankan beberapa bagian di dalam program if ($a > $b) { echo "a lebih besar dari b"; if ($a < $c) echo "a lebih kecil dari c"; }
Statement else if (expr) statement_A else statement_B expr statement_A true false statement_B
else memperluas sebuah statement if untuk menjalankan statement lain apabila expr dalam statement if menghasilkan nilai FALSE Statement else hanya dapat dieksekusi jika expr if yang dievaluasi bernilai FALSE if ($a > $b) echo "a lebih besar dari b"; else echo "a tidak lebih dari b";
Statement elseif if (expr_1) statement_1 elseif (expr_2) statement_2 ... elseif (expr_N) statement_N
expr_1 state_1 true false expr_2 state_2 expr_N state_N
Statement “elseif” dapat ditulis dalam dua kata, yaitu “else if” Statement elseif hanya dijalankan jika expr pada statement if yang mendahuluinya bernilai FALSE dan expr elseif-nya bernilai TRUE if ($a > $b) echo "a lebih dari b"; elseif ($a == $b) echo "a sama dgn b"; else echo "a kurang dari b";
PHP memberikan alternatif sintaks untuk beberapa macam struktur kontrol seperti if, while, for, foreach, dan switch. Bentuk dasar dari sintaks alternatif tersebut adalah dengan mengganti tanda kurawal-buka ( { ) dengan tanda titik-ganda ( : ) dan tanda kurawal-tutup ( } ) dengan endif; , endwhile; , endfor; , endforeach; atau endswitch;
<?php if ($a == 5) { echo "A sama dengan 5"; } ?> --- ATAU --- <?php if ($a == 5): ?> A sama dengan 5 <?php endif; ?>
Contoh lain penggunaan sintaks alternatif if ($a == 5): echo "a sama dgn 5"; echo "bla bla bla"; elseif ($a == 6): echo "a sama dgn 6"; echo "bli bli bli"; else: echo "a bukan 5 ataupun 6"; endif;
Statement switch switch (expr){ case value_1 : statement_1 ... case value_N : statement_N default : statement_default }
state_1 state_default state_2 state_N expr == true value_1 false value_N state_N
Statement switch dijalankan per baris Pada awalnya, tidak ada baris yang dieksekusi PHP akan memulai menjalankan bagian statement hanya jika ditemukan sebuah value dari case memiliki nilai yang sama dengan nilai expr pada switch PHP akan terus menjalankan setiap statement yang berada setelah value dari case tersebut, sampai akhir dari blok switch atau sampai ditemukannya statement break
$i = 1; switch ($i) { case 0: echo "i sama dengan 0"; case 1: echo "i sama dengan 1"; case 2: echo "i sama dengan 2"; } Jika $i bernilai 1, maka hasilnya adalah : i sama dengan 1 i sama dengan 2
Statement switch digunakan untuk membandingkan variabel (atau expression) yang sama dengan banyak nilai yang berbeda dan menjalankan proses yang berbeda, bergantung dari nilai mana yang sama dengan variabel atau expression tersebut Dua contoh berikut menggunakan dua cara yang berbeda dalam melakukan seleksi, satu menggunakan statement if dan yang lain menggunakan switch:
if ($i == 0) echo "i sm dgn 0"; if ($i == 1) echo "i sm dgn 1"; if ($i == 2) echo "i sm dgn 2"; switch ($i) { case 0: echo "i sm dgn 0"; break; case 1: echo "i sm dgn 1"; case 2: echo "i sm dgn 2"; }
Statement untuk sebuah case dapat dikosongkan, sehingga statement yang dijalankan adalah statement pada case yang berikutnya statement pada case default dijalankan apabila tidak ada satupun case yang value-nya cocok dengan expr, case default biasanya berada pada akhir statement switch expr pada statement switch dapat berupa expression yang bertipe sederhana seperti integer atau float, dan string
switch ($i) { case 0: case 1: case 2: echo "i kurang dari 3"; break; case 3: echo "i sama dgn 3"; }
switch ($i) { case 0: echo "i sama dgn 0"; break; case 1: echo "i sama dgn 1"; case 2: echo "i sama dgn 2"; default: echo "i tidak sama dgn 0, 1 ataupun 2"; }
switch ($i): case 0: echo "i sama dgn 0"; break; case 1: echo "i sama dgn 1"; case 2: echo "i sama dgn 2"; default: echo "i tidak sama dgn 0, 1 ataupun 2"; endswitch;