Setelah mempelajari perulangan dasar seperti for, while, dan do-while, PHP menyediakan perulangan khusus untuk array, yaitu perulangan foreach. Dalam tutorial kali ini kita akan mempelajari Pengertian dan Cara Penulisan Perulangan Foreach dalam PHP.
- Pengertian Perulangan Foreach dalam PHP -
Array merupakan tipe data yang sering digunakan dalam membuat program menggunakan PHP. Kemampuan array dalam menyimpan banyak data dalam satu variabel akan sangat berguna untuk menyederhanakan dan menghemat penggunaan variabel.
Untuk menampilkan dan memproses data dari array, kita bisa memanfaatkan perulangan for, seperti contoh berikut ini:
<?php
$nama
=
array
(
"Andri"
,
"Joko"
,
"Sukma"
,
"Rina"
,
"Sari"
);
for
(
$i
=0;
$i
<5;
$i
++)
{
echo
"$nama[$i]"
;
echo
"<br />"
;
}
?>
Contoh diatas membuat perulangan for sebanyak 5 kali, dengan variabel counter $i dimulai dari angka 0 (karena index array dimulai dari angka 0).
Namun sebagai cara alternatif untuk menampilkan array, saya akan mengubah kode diatas dengan menggunakan perulangan foreach:
<?php
$nama
=
array
(
"Andri"
,
"Joko"
,
"Sukma"
,
"Rina"
,
"Sari"
);
foreach
(
$nama
as
$val
)
{
echo
"$val"
;
echo
"<br />"
;
}
?>
Perulangan foreach diatas akan menampilkan semua isi array dengan perintah yang lebih singkat daripada menggunakan perulangan for.
- Cara Penulisan Perulangan Foreach dalam PHP -
Perulangan foreach merupakan perulangan khusus untuk pembacaan nilai array. Seperti yang telah kita bahas pada tutorial tentang tipe data array: Mengenal Tipe Data Array dan Cara Penulisan Array dalam PHP, setiap array memiliki pasangan key dan value. Key adalah ‘posisi’ dari array, danvalue adalah ‘isi’ dari array.
Format dasar perulangan foreach adalah:
foreach ($nama_array as $value) { statement (...$value...) } |
- $nama_array adalah nama dari array yang telah didefenisikan sebelumnya.
- $value adalah nama ‘variabel perantara’ yang berisi data array pada perulangan tersebut. Anda bebas memberikan nama untuk variabel perantara ini, walaupun pada umumnya banyak programmer menggunakan $value, atau $val saja.
Berikut adalah contoh perulangan foreach sebelumnya:
<?php
$nama
=
array
(
"Andri"
,
"Joko"
,
"Sukma"
,
"Rina"
,
"Sari"
);
foreach
(
$nama
as
$val
)
{
echo
"$value"
;
echo
"<br />"
;
}
?>
Pada contoh diatas, saya mendefenisikan variabel array $nama dengan format singkat, dan tanpa mendefenisikan key secara tertulis. Variabel $val merupakan variabel perantara dalam contoh diatas. Perulangan tersebut akan diulang sebanyak data yang terdapat di dalam array, sehingga kita tidak perlu harus menghitung seberapa banyak perulangan yang harus dilakukan.
Jika anda membutuhkan nilai key dari array untuk dapat diproses, maka PHP menyediakan bentuk kedua dari perulangan foreach, dengan format dasar penulisan sebagai berikut:
foreach ($nama_array as $key => $value) { statement ($key...$value...) } |
Perbedaan dengan format sebelumnya, disini PHP menyediakan variabel perantara kedua, yaitu variabel $key. Variabel $key ini menampung nilai key dari array.
Berikut adalah contoh penggunaannya:
<?php
$nama
=
array
(
1=>
"Andri"
,
6=>
"Joko"
,
12=>
"Sukma"
,
45=>
"Rina"
,
55=>
"Sari"
);
foreach
(
$nama
as
$kunci
=>
$isi
)
{
echo
"Urutan ke-$kunci adalah $isi"
;
echo
"<br />"
;
}
?>
Variabel array $nama saya defenisikan menggunakan key yang berbeda-beda. Pada perulanganforeach, saya membuat variabel perantara $kunci =>$isi, sehingga didalam perulangan, variabel$kunci akan berisi key dari array, dan variabel $isi akan berisi nilai dari array.
Proses menampilkan dan memproses array akan lebih mudah dengan menggunakan perulangan foreach dibandingkan perulangan dasar seperti for. Terlebih lagi kita tidak perlu mencari tau seberapa banyak perulangan harus dilakukan, karena perulangan foreach akan otomatis berhenti pada data terakhir dari array.