Tutorial Belajar PHP Part 38: Pengertian dan Fungsi Perulangan Foreach dalam PHP

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 />";
}
?>

Tutorial Belajar PHP - Contoh Hasil Perulangan Foreach PHPContoh 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, dan value 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 />";
}
?>

Tutorial Belajar PHP - Contoh Hasil Perulangan Foreach PHP 2Variabel array $nama saya defenisikan menggunakan key yang berbeda-beda. Pada perulangan foreach, 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.


Tutorial Terkait:

60 Comments

    • Andre
      01 Oct 14
  1. Modifikasi
    23 Nov 14
    • Andre
      24 Nov 14
  2. Jamiat Abdillah
    06 Dec 14
    • Andre
      06 Dec 14
  3. Freddy
    22 Dec 14
  4. aemana
    22 Dec 14
    • Andre
      23 Dec 14
  5. bahrul
    04 Jan 15
    • Agussetyar
      30 Jan 15
  6. Bambang Supriadi
    06 Feb 15
  7. anton
    20 Feb 15
    • Andre
      21 Feb 15
  8. kekalen
    22 Feb 15
    • Andre
      23 Feb 15
  9. teguh
    26 Apr 15
  10. lks
    03 May 15
    • Andre
      05 May 15
  11. Sinau Coding
    24 May 15
  12. slametz
    24 May 15
  13. anandia
    04 Aug 15
    • Andre
      04 Aug 15
  14. Budi
    05 Oct 15
    • Andre
      06 Oct 15
  15. basusena
    15 Oct 15
  16. basusena
    15 Oct 15
  17. Joe
    20 Dec 15
    • Andre
      20 Dec 15
  18. Putra
    12 Jan 16
    • Andre
      14 Jan 16
  19. justssh
    25 Feb 16
    • Andre
      26 Feb 16
  20. Asharisan
    11 Mar 16
    • Andre
      11 Mar 16
  21. Fatchul Amin
    18 Mar 16
  22. Fatchul Amin
    18 Mar 16
    • Andre
      20 Mar 16
  23. Angga
    02 Apr 16
    • Andre
      03 Apr 16
  24. masaris
    06 Jun 16
  25. muhammad nashir
    14 Oct 16
    • Andre
      15 Oct 16
  26. Budi
    10 Nov 16
    • Andre
      11 Nov 16
  27. JERI34
    13 Jan 17
    • Andre
      14 Jan 17
  28. rudi
    15 Jan 17
    • Andre
      16 Jan 17
  29. hadi
    08 May 17
  30. Siti Indah
    03 Aug 17
  31. pras
    29 Aug 17
    • Andre
      30 Aug 17
      • Charlie
        27 Nov 17
        • Andre
          02 Dec 17
  32. faisal wachid
    20 Nov 17
    • faisal wachid
      20 Nov 17
      • Andre
        22 Nov 17

Add Comment