Cara menggunakan while php mysql

Setelah sebelumnya kita bahas perulangan dengan for loop, pada kesempatan kali ini kita akan membahas bentuk perulangan yang lain yaitu while dan do while pada PHP
Dafatar isi:

  1. While Pada PHP
  2. Penulisan While Pada PHP
  3. Contoh penggunaan while
  4. Do While Pada PHP
  5. Standar Penulisan

I. While Pada PHP

Perulangan while merupakan bentuk perulangan paling simpel yang ada di PHP, perulangan ini digunakan ketika banyaknya perulangan tidak kita ketahui atau ketika kita tidak ingin menuliskan banyaknya perulangan [pada expression].

Mengutip wikipedia, terjemahan bebas dari while loop adalah  salah satu control statement dimana kode dieksekusi berulang kali berdasarkan kondisi tertentu. While juga dapat diibaratkan statement if yang di jalankan berulang kali. Jika digambarkan dalam bentuk flowchart, maka akan tampak seperti gambar berikut:

II. Format Penulisan While pada PHP

Penulisan perulangan while pada PHP dapat menggunakan kurung kurawa, colon, atau tanpa keduanya:

// Kurung Kurawa, paling umum digunakan
while [expression] {
    statement;
}

// Colon
while [expression] :
    statement;
endwhile;

// Tanpa Kurung Kurawa maupun colon
while [expression]
    statement;

jika kode diatas dijalankan, maka PHP akan mengecek expression, jika expression bernilai:

  1. true, maka blok statement akan dijalankan, selanjutnya PHP akan kembali lagi mengecek nilai expression, jika bernilai TRUE, PHP kembali menjalankan statement, begitu seterusnya.
  2.  false, maka perulangan berhenti.

Kelebihan penggunaan colon

Penggunaan colon yang diakhiri dengan endwhile bermanfaat untuk memudahkan kita mengidentifikasi akhir dari statement while dibanding hanya tanda kurung tutup [ } ], terutama ketika kode yang kita tulis panjang, disamping itu, juga bermanfaat ketika kode yang kita tulis merupakan kombinasi antara HTML dan PHP.

Contoh dapat dilihat pada artikel sebelumnya: Memahami If Else Pada PHP [dan Elseif]

III. Skip loop pada nilai tertentu

Ketika while loop sedang berjalan, terkadang kita ingin meng-skip nya pada nilai tertentu, untuk melakukannya gunakan keyword continue, contoh:

$i = 1;
while [$i execute[];
while [$row = $stmt->fetch[]]
{
	echo $row['nama'];
}

pada contoh diatas, setiap kali $stmt->fetch[] dijalankan, akan menghasilkan row tabel hasil query, row akan bergeser dari baris pertama, kedua, …dst hingga terakhir.

Bagaimana while bisa tahu akhir dari loop?

Mungkin sedikit membingungkan kenapa pada kondisi tersebut while bisa tahu akhir dari loop padahal kita tidak mendefinisikan kondisi akhir loop seperti pada contoh 1?

Penjelasannya: setelah $stmt->fetch[] mencapai baris terakhir dan $stmt->fetch[] dijalankan kembali maka tidak akan menghasilkan apa-apa alias kosong, sehingga bernilai false atau  while[], pada kondisi demikian perulangan while akan berhenti.

Perhatikan contoh berikut:

$array = array['Januari', 'Februari'];
while [$row = each[$array]]
{
	echo $row['value'] . ' '; // Januari Februari
}
?>

pada contoh diatas, fungsi each memiliki sifat seperti seperti $stmt->fetch[], dimana setiap dijalankan, cursor akan berjalan dari element array pertama hingga terakhir, setelah habis, fungsi each akan menghasilkan nilai kosong/false, sehingga loop while berhenti, untuk lebih jelasnya, perhatikan script berikut:

$array = array['Januari', 'Februari'];
$each2 = each[$array];
$each2 = each[$array];
$each3 = each[$array];

echo '
'; 
print_r[$each2];
/**
Array
[
    [1] => Januari
    [value] => Januari
    [0] => 0
    [key] => 0
]
*/
print_r[$each2];
/**
Array
[
    [1] => Februari
    [value] => Februari
    [0] => 1
    [key] => 1
]
*/
print_r[$each3];
/**

*/

dari contoh diatas terlihat bahwa setelah cursor mencapai element ke dua [baris 4], pemanggilan fungsi each [baris 5] akan menghasilkan nilai kosong.

VI. Do While Pada PHP

Jujur saja, saya jarang sekali jika tidak bisa dikatakan tidak pernah menggunakan loop ini, hal ini dikarenakan [menurut saya] membutuhkan alur yang agak beda dari loop yang lain, sehingga sedikit membutuhkan ekstra logika, namun demikian tidak ada salahnya kita bahas fungsi ini.

Sebagaimana fungsi while, do while juga digunakan ketika kita tidak tahu akhir dari loop, namun bedanya expression diperiksa setelah perulangan/statement terjadi, sehingga setidaknya ada satu kali eksekusi statement. Format penulisan do while adalah:

do {
	statement; // dieksekusi terlebih dahulu
} while [expression];

Kapan loop do while digunakan?

banyak yang bertanya-tanya, dalam praktek pada kondisi apa perulangan do while dibutuhkan? hal ini tentu saja tergantung dari case yang dihadapi oleh masing masing programmer.

Contoh salah satu kondisi yang bisa menggunakan do while [meskipun sebenarnya menggunakan while saja sudah cukup dan lebih mudah dimengerti] adalah  fungsi memotong text, melanjutkan contoh while sebelumnya namun kali ini menggunakan do while:

$num_char 	= 50;
$text 		= 'Contoh script yang digunakan untuk memotong 50 huruf pertama dari kalimat / paragraf dengan php';

$num_char++; // ditambahkan 1 karena akan dikurangkan di baris 7
do {
	$char  = $text{--$num_char};
} while [$char != ' '];
echo substr[$text, 0, $num_char] . '...';

dari contoh diatas, pertama kali PHP akan menjalankan statement [ $char = $text{--$num_char} ], kemudian melakukan pemeriksaan pada ekspresi [$char != ' '] apakah variabel $char bernilai spasi atau tidak, jika tidak loop akan dilakukan hingga variabel $char bernilai spasi [‘ ‘].

III. Kesimpulan

Dari penjelasan diatas dapat disimpulkan bahwa baik while dan do while digunakan ketika kita tidak tahu jumlah perulangan yang terjadi atau tidak ingin menuliskan jumlah perulangan pada expression.

Namun terdapat sedikit perbedaan bahwa pada do while expression diperiksa pada akhir perulangan sehingga setidaknya statement diksekusi sekali.

Demikian artikel tentang while dan do while pada PHP, semoga bermanfaat.

Subscibe Now

Suka dengan artikel di Jagowebdev.com? jangan sampai ketinggalan, segera join ke milis kami untuk update informasi terbaru dari Jagowebdev.com

Apa itu While dalam PHP?

Perulangan While pada PHP merupakan jenis perulangan termasuk dalam uncounted loop karena biasa digunakan untuk mengulang sesuatu yang belum jelas jumlah pengulangannya, meskipun dapat digunakan sebagai counted loop.

Bagaimana bentuk umum penulisan perulangan while?

Cara penulisan perulangan WHILE mirip dengan stuktur logika IF, yakni kondisi perulangan akan diperiksa di awal. Jika kondisi bernilai TRUE, maka perulangan akan terus dilakukan sampai dengan nilai kondisi bernilai FALSE.

Apa yang dimaksud dengan pengulangan dengan While?

Singkatnya, perulangan while adalah perulangan yang bersifat indefinite alias tidak pasti, atau bahkan tidak terbatas [2]. Sebuah blok kode akan dilakukan terus-menerus selama suatu kondisi terpenuhi. Jika suatu kondisi ternyata tidak terpenuhi pada iterasi ke 10, maka perulangan akan berhenti.

Apa yang dimaksud dengan struktur Do While?

Jadi, Do-While adalah struktur pengulangan dimana aksi dilakukan hingga kondisi [ persyaratan ] berhenti terpenuhi.

Bài mới nhất

Chủ Đề