Sabtu, 14 Mei 2016

Pengertian Struktur Perulangan For dalam PHP

Pengertian Struktur Perulangan For dalam PHP

Struktur perulangan (atau dalam bahasa inggris disebut dengan loop) adalah instruksi program yang bertujuan untuk mengulang beberapa baris perintah. Dalam merancang perulangan kode program, kita setidaknya harus mengetahui 3 komponen, yaitu kondisi awal dari perulangan, perintah program yang akan diulang, serta kondisi akhir dimana perulangan akan berhenti.
Di dalam bahasa pemograman, terdapat beberapa jenis instruksi perulangan, salah satunya: struktur perulangan FOR.
Sebagai contoh sederhana untuk perulangan for, saya akan membuat program PHP untuk menampilkan 10 baris kalimat “Saya sedang belajar PHP”. Berikut adalah kode program yang digunakan:
<?php
for ($i= 1; $i <= 10; $i++)
{
   echo "Saya sedang belajar PHP";
   echo "<br />";
}
?>

Jika anda menjalankan perintah tersebut, maka di web browser akan tampil sebanyak 10 kalimat. Kemampuan bahasa pemograman untuk melakukan perulangan ini sangat praktis jika yang kita inginkan adalah mengulang beberapa perintah yang sama sebanyak beberapa kali.

Cara Penulisan Struktur Perulangan For dalam PHP

Seperti yang telah saya singgung sebelumnya, untuk kondisi perulangan for, kita setidaknya membutuhkan 3 kondisi, yaitu di kondisi awal perulangan, kondisi pada saat perulangan, dan kondisi yang harus dipenuhi agar perulangan berhenti.
Penulisan dasar format perulangan for PHP adalah sebagai berikut:
for (start; condition; increment)
{
   statement;
}
  • Start adalah kondisi pada saat awal perulangan. Biasanya kondisi awal ini digunakan untuk membuat dan memberikan nilai kepada variabel counter yang digunakan untuk mengontrol perulangan. Misalkan, kita akan membuat variabel counter $i, maka untuk kondisi start ini, kita juga harus memberikan nilai awal untuk variabel $i, misalnya dengan 1, maka $i=1.
  • Condition adalah kondisi yang harus dipenuhi agar perulangan dijalankan. Selama kondisi ini terpenuhi, maka PHP akan terus melakukan perulangan. Biasanya variabel counter digunakan untuk mengatur akhir perulangan. Misalkan kita ingin menghentikan perulangan jika variabel $i telah mencapai nilai 20, maka pada bagian condition ini kita membuat perintah $i<=20, yang berarti selama nilai $i kurang atau sama dengan 20, terus lakukan perulangan.
  • Increment adalah bagian yang digunakan untuk memproses variabel counter agar bisa memenuhi kondisi akhir perulangan. Biasanya, pada bagian inilah kita akan membuat kondisi dari variabel counter.
  • Statement adalah bagian kode program yang akan diproses secara terus-menerus selama proses perulangan berlangsung. Untuk statement ini, kita membuat blok program di antara tanda kurung kurawal ({ dan }) sebagai penanda bahwa bagian di dalam kurung kurawal inilah yang akan dikenai proses perulangan.
Sebagai contoh, kita akan membuat perulangan untuk menampilkan angka 1-15 kedalam web browser, berikut kode PHP yang digunakan:
1
2
3
4
5
6
7
<?php
for ($i= 1; $i <= 15; $i++)
{
   echo $i;
   echo "<br />";
}
?>

Jika anda menjalankan kode tersebut, maka di dalam web browser akan tampil urutan angka dari 1 sampai dengan 15.
Sebagai kondisi awal dari perulangan tersebut adalah $i= 1, dimana saya memberikan nilai 1 kepada variabel $i. Variabel $i inilah yang akan menjadi counter atau penghitung dari perulangan for.
Untuk kondisi akhir, saya membuat $i <= 15, jadi selama variabel $i bernilai kurang atau sama dengan 15, maka perulangan akan terus dijalankan.
Sebagai increment, saya membuat $i++, dimana instruksi ini sama dengan $i=$i+1. instruksi ini akan dijalankan pada setiap perulangan, sehingga dengan kata lain, setiap proses perulangan, $i akan bertambah 1 angka.
Selain berfungsi sebagai counter, variabel $i juga dapat digunakan dalam proses perulangan, sehingga dengan membuat perintah echo $i, maka dalam setiap perulangan, kita bisa menampilkan nilai $i pada saat itu.
Sebagai contoh lain, saya ingin membuat perulangan untuk menampilkan angka 0-100, namun untuk kelipatan 5, seperti: 0.5.10..dst, sampai dengan 100.
Berikut adalah contoh kode PHPnya:
1
2
3
4
5
6
<?php
for ($i= 0; $i <= 100; $i=$i+5)
{
   echo $i;
   echo "<br />";
}

Perbedaan penulisan struktur for diatas dibandingkan contoh sebelumnya adalah pada bagian increment, dimana saya membuat kondisi increment yang menaik sebanyak 5 angka setiap perulangannya ($i=$i+5). Sehingga variabel counter, $i akan bertambah sebanyak 5 pada setiap perulangan.
Kita juga bisa membuat perluangan dengan kondisi mundur, seperti contoh kode PHP berikut ini:
1
2
3
4
5
6
<?php
for ($i= 20; $i >= 1; $i--)
{
   echo $i;
   echo "<br />";
}
Di dalam kode tersebut, saya memulai nilai awal dari angka $i= 20, membuat perulangan selama $i >= 1, dan pada setiap perulangan, nilai $i akan dikurangi 1 angka ($i–). Dengan kondisi tersebut, maka variabel counter $i akan dikurangi 1 pada setiap perulangan.

Pengertian Infinity Loop

Ketika membuat kondisi akhir dari perluangan for, kita harus memperhatikan kapan kondisi akhir tersebut dipenuhi. Jika kondisi akhir tidak pernah terpenuhi, maka perulangan akan berjalan selamanya. Hal ini dikenal dengan infinity loop.
Seperti yang terjadi untuk kode seperti berikut ini:
1
2
3
4
5
6
<?php
for ($i= 20; $i >= 1; $i++)
{
   echo $i;
   echo "<br />";
}
Jika anda menjalankan kode tersebut, proses perulangan akan berjalan terus menerus, sehingga untuk menghentikannya kita harus menutup paksa web browser.
Kesalahan dari struktur for tersebut adalah pada kondisi akhir dari perulangan, dimana saya membuat $i >= 1, sehingga ketika nilai awal variabel counter $1 adalah 20, dan dalam tiap perulangan $i ditambah 1, maka nilai $i akan selalu lebih besar dari 1, sehingga kondisi akhir tidak akan pernah terpenuhi, dan $i >= 1 akan selalu benar.
Infinity loop ini kadang diperlukan untuk kasus-kasus tertentu. Namun kebanyakan kita akan menghindari perulangan jenis ini.

Pengertian Nested Loop (Perulangan Bersarang)

Selain infinity loop, terdapat istilah lainnya yang sering digunakan dalam proses perulangan, yakni nested loop, atau terjemahan bebasnya: perulangan bersarang.
Nested loop adalah istilah pemograman yang berarti membuat perulangan di dalam perulangan. Perhatikan contoh program berikut:
1
2
3
4
5
6
7
8
9
<?php
for ($i=0; $i <10; $i++)
{
   for ($j=0; $j <10; $j++)
   {
      echo $i;
   }
   echo "<br />";
}

Dalam contoh program diatas, saya membuat perulangan di dalam perulangan. Counter $j digunakan untuk perulangan dalam (inner loop), dan counter $i digunakan di dalam perulangan luar (outer loop).
Nested loop ini biasanya digunakan dalam program yang membutuhkan pengaksesan kompleks, seperti array 2 atau 3 dimensi.

Cara Alternatif Penulisan Perulangan For dalam PHP

Sama seperti struktur if, PHP juga memiliki alternatif perulangan tanpa menggunakan tanda kurung kurawal sebagai penanda blok program, dan menggantinya dengan endfor.
Berikut adalah contoh perulangan for dengan endfor:
1
2
3
4
5
6
<?php
for ($i= 1; $i <= 15; $i++) :
   echo $i;
   echo "<br />";
endfor;
?>
Perbedaan dengan penulisan for dengan kurung kurawal adalah penanda awal blok yang menggunakan tanda titik dua (:) dan pada akhir blok dengan perintah endfor.

Instruksi for yang telah kita pelajari dalam tutorial PHP ini membutuhkan syarat yaitu kita telah mengetahui berapa kali perulangan akan dilakukan pada saat penulisan program. Untuk kondisi dimana kita tidak bisa menentukan berapa banyak proses perulangan yang terjadi, maka PHP menyediakan struktur perulangan while.

Tidak ada komentar:

Posting Komentar