Anda di halaman 1dari 6

Modul XIV

PERULANGAN DALAM PHP

A. Statement FOR
Sintaks statement FOR adalah sebagai berikut

for (variabel = nilaiawal; variabel operatorlogika nilaiakhir; increment)


{
Proses yang diulang
}
Variabel yang digunakan pada FOR di atas, dinamakan variabel counter atau pencacah.
Contoh:
Script berikut ini akan menghasilkan teks heading mulai dari heading 1, 2 s/d 5.
<?php
$teks = "Hello World";
for ($a = 1; $a <= 5; $a++)
{
echo "<h".$a.">".$teks."</h".$a.">";
}
?>
Hasil output di atas adalah:

Pada for di atas, variabel counternya dalam hal ini adalah $a. Nilai $a ini memiliki nilai
awal sama dengan 1. Selanjutnya operator increment (kenaikan) yang digunakan adalah $a++
atau $a = $a + 1 (kenaikannya satu) dan nilai akhir untuk $a adalah sama dengan 5.
Selain operator increment, kita juga bisa menggunakan operator decrement (turun)
Contohnya
<?php
$teks = "Hello World";
for ($a = 10; $a > 5; $a--)
{
echo "<h".$a.">".$teks."</h".$a.">";
}
?>
FOR di dalam FOR (nested FOR)
Statement FOR dapat terletak di dalam sebuah FOR, seperti contoh berikut ini
<?php
for ($a = 1; $a < =3; $a++)
{
for ($b = 1; $b <= 2; $b++)
{
echo "Nilai a = ".$a. " Nilai b = ".$b. "<br />";
}
}
?>
Contoh di atas disebut juga “nested FOR tingkat 2”.
Proses yang terjadi pada script di atas adalah sbb:
$a = 1 (masih memenuhi $a < =3), maka lakukan for yang terletak di dalam
o $b = 1 (masih memenuhi $b <= 2) maka cetak "Nilai a = 1 Nilai b = 1"
o $b = 2 (masih memenuhi $b <= 2) maka cetak "Nilai a = 1 Nilai b = 2"
o $b = 3 (tidak memenuhi $b <= 2), maka STOP
$a = 2 (masih memenuhi $a <= 3), maka lakukan for yang terletak di dalam
o $b = 1 (masih memenuhi $b <= 2) maka cetak "Nilai a = 2 Nilai b = 1"
o $b = 2 (masih memenuhi $b <= 2) maka cetak "Nilai a = 2 Nilai b = 2"
o $b = 3 (tidak memenuhi $b <= 2), maka STOP
$a = 3 (masih memenuhi $a <= 3), maka lakukan for yang terletak di dalam
o $b = 1 (masih memenuhi $b <= 2) maka cetak "Nilai a = 3 Nilai b = 1"
o $b = 2 (masih memenuhi $b <= 2) maka cetak "Nilai a = 3 Nilai b = 2"
o $b = 3 (tidak memenuhi $b <= 2), maka STOP
$a = 4 (tidak memenuhi $a <= 3), maka STOP

Dengan demikian script di atas akan menghasilkan output


Nilai a = 1 Nilai b = 1
Nilai a = 1 Nilai b = 2
Nilai a = 2 Nilai b = 1
Nilai a = 2 Nilai b = 2
Nilai a = 3 Nilai b = 1
Nilai a = 3 Nilai b = 2
Script PHP untuk membuat tabel dengan n baris dan m kolom secara otomatis
Tentu kita tahu bahwa tag untuk membuat tabel dengan 3 baris 2 kolom misalnya, adalah
sebagai berikut:
<table border="1">
<tr><td>…</td><td>… </td></tr>
<tr><td>…</td><td>… </td></tr>
<tr><td>…</td><td>… </td></tr>
</table>

Perhatikan baik-baik tag di atas. Untuk membuat tabel di atas, tag <td>..</td> dalam satu baris
ditulis 2 kali (sesuai jumlah kolom yang diinginkan). Sedangkan <tr> dan </tr> ditulis 3 kali (sesuai
jumlah baris yang diinginkan). Konsep untuk membuat script PHP yang bisa mengenerate tabel
dengan n baris dan m kolom secara otomatis adalah sebagai berikut. Kita membuat baris pertama
<tr> terlebih dahulu, kemudian dilanjutkan dengan membuat kolom <td>..</td> sebanyak jumlah
kolom. Setelah selesai membuat kolom, ditutup dengan </tr>. Baris pertama selesai. Berikutnya
buat baris ke dua. Pertama kita juga buat <tr>, lalu dilanjutkan dengan <td>…</td> sebanyak
jumlah kolom dan diakhiri dengan </tr>. Nah.. proses ini diulang terus sampai dengan jumlah
baris.

Apabila kita lihat konsep di atas, maka dapat kita lihat terdapat dua proses perulangan yaitu
untuk membuat baris dan kolomnya. Sehingga dalam hal ini kita gunakan FOR di dalam FOR
(nested FOR tingkat 2)
<?php
$jumBaris = 10;
$jumKolom = 6;
echo "<table border=’1’>";
for ($baris = 1; $baris <= $jumBaris; $baris++)
{
echo "<tr>";
for ($kolom = 1; $kolom <= $jumKolom; $kolom++)
{
echo"<td>…</td>";
}
echo "</tr>";
}
echo "</table>";
?>
Script PHP untuk menghasilkan list combo box berisi tahun mulai 1930 s/d 2008 secara
otomatis
<?php
echo "<select name=’tahun’>";
for ($tahun = 1930; $tahun <= 2008; $tahun++)
{
echo "<option value=’".$tahun."’>".$tahun."</option>";
}
echo "</select>";
?>
Hasil output di atas adalah

B. Statemet WHILE

Bentuk umum statement WHILE adalah sbb:


while (syarat)
{
// bagian yang diulang
}
Perhatikan bentuk umum WHILE di atas! Sebelum menuju bagian yang diulang, di atasnya
terdapat syarat. Syarat inilah yang menentukan apakah bagian yang diulang akan dijalankan
atau tidak. Selama syarat ini dipenuhi atau bernilai BENAR, maka bagian yang diulang akan
terus dijalankan. Apabila suatu saat syarat sudah tidak terpenuhi lagi atau bernilai SALAH
maka perulangan berhenti.
Contoh: Script berikut ini akan menampilkan bilangan 1 s/d 3
<?php
$bil = 1;
while ($bil <= 3)
{
echo $bil. "<br />";
$bil++;
}
?>
WHILE di dalam WHILE (nested WHILE)
Seperti halnya FOR, statement WHILE juga dapat terletak di dalam sebuah WHILE,
seperti contoh berikut ini
<?php
$a = 1;
while ($a <= 3)
{
$b = 1;
while ($b <= 2)
{
echo "Nilai a = ".$a. " Nilai b = ".$b. "<br />";
$b++;
}
$a++;
}
?>

Script PHP untuk menjumlahkan bilangan bulat 2 s/d 50


<?php
$jumlah = 0;
$bil = 2;

while ($bil <= 50)


{
$jumlah = $jumlah + $bil;
$bil++;
}
echo "Hasilnya adalah ".$jumlah;
?>

Script PHP untuk mencari banyaknya bilangan bulat mulai dari 3 s/d 127 yang
merupakan kelipatan 6.

<?php
$hitung = 0;
$bil = 3;
while ($bil <= 127)
{
if ($bil % 6 == 0) $hitung = $hitung + 1;
$bil++;
}
echo "Banyaknya bilangan bulat adalah ".$hitung;
?>
C. Statemet DO-WHILE
Bentuk umum statement DO-WHILE adalah sbb:
Do
{
// bagian yang diulang
} while (syarat)

Perulangan do ... while sama persis dengan perulangan while. Ia sama-sama mengevaluasi
ekspresi boolean. Selama ekspresi tersebut bernilai true, perulangan akan terus dilakukan. Dan
jika nilai boolean tersebut false, perulangan akan dihentikan.

Bedanya hanya satu:

 Kalau dalam metode while, ekspresi boolean akan diperiksa terlebih dahulu sebelum
memulai perulangan.
 Ada pun dengan do ... while, ia akan mengeksekusi perulangan terlebih dahulu, baru
setelah itu ia akan mengevaluasi kondisi boolean.

Contoh Penggunaan do-while :


<?php
echo "Mencari jumlah huruf vokal dalam suatu kata";
echo "<br>"; // ganti baris
$jumlah = 0;
$kata="Belajar PHP"; // suatu kata
$huruf="a"; // huruf vokal yang dicari bisa huruf a,e,i,u,o
$i = 0;
do{
if(substr($kata, $i, 1) == $huruf){
$jumlah ++;
$i++;
}
while($i<strlen($kata));
}
echo "Jumlah huruf " . $huruf . " dalam kata " . $kata . " : ";
echo "<br>";
echo $jumlah;
?>

Anda mungkin juga menyukai