
Pada materi sebelumnya, kita sudah belajar tentang perulangan foreach di PHP. Perulangan foreach sangat sering digunakan untuk membaca isi array.
Namun, dalam praktik pemrograman web, data yang digunakan tidak selalu berbentuk array biasa. Kadang kita perlu menyimpan data yang lebih kompleks, misalnya data siswa, data produk, data kategori, atau data nilai.
Untuk menyimpan data seperti itu, kita bisa menggunakan array multidimensi.
Secara sederhana, array multidimensi adalah array yang berisi array lain di dalamnya.
Pengertian Array Multidimensi di PHP
Array multidimensi adalah array yang memiliki array lain di dalamnya. Dengan array multidimensi, kita bisa menyimpan data yang lebih lengkap dan terstruktur.
Contoh array multidimensi sederhana:
$siswa = [
["Budi", "XI RPL", 85],
["Ani", "XI TKJ", 90],
["Doni", "XI MM", 78]
];
Pada contoh di atas, variabel $siswa berisi beberapa array. Setiap array di dalamnya menyimpan data nama, kelas, dan nilai siswa.
Contoh Array Multidimensi di PHP
Berikut contoh array multidimensi yang lebih mudah dibaca:
$siswa = [
[
"nama" => "Budi",
"kelas" => "XI RPL",
"nilai" => 85
],
[
"nama" => "Ani",
"kelas" => "XI TKJ",
"nilai" => 90
],
[
"nama" => "Doni",
"kelas" => "XI MM",
"nilai" => 78
]
];
Pada contoh tersebut, setiap data siswa memiliki tiga informasi, yaitu:
namakelasnilai
Array seperti ini lebih mudah digunakan karena setiap data memiliki key atau penanda yang jelas.
Menampilkan Array Multidimensi dengan Foreach
Untuk menampilkan data array multidimensi, kita dapat menggunakan perulangan foreach.
<?php
$siswa = [
[
"nama" => "Budi",
"kelas" => "XI RPL",
"nilai" => 85
],
[
"nama" => "Ani",
"kelas" => "XI TKJ",
"nilai" => 90
],
[
"nama" => "Doni",
"kelas" => "XI MM",
"nilai" => 78
]
];
foreach ($siswa as $data) {
echo "Nama: " . $data["nama"] . "<br>";
echo "Kelas: " . $data["kelas"] . "<br>";
echo "Nilai: " . $data["nilai"] . "<br>";
echo "<hr>";
}
?>
Hasilnya akan menampilkan data seperti berikut:
Nama: Budi
Kelas: XI RPL
Nilai: 85
Nama: Ani
Kelas: XI TKJ
Nilai: 90
Nama: Doni
Kelas: XI MM
Nilai: 78
Pada kode di atas, variabel $data digunakan untuk mengambil setiap isi dari array $siswa.
Apa Itu Foreach Bersarang?
Foreach bersarang adalah perulangan foreach yang berada di dalam perulangan foreach lainnya.
Foreach bersarang biasanya digunakan untuk membaca array yang memiliki struktur lebih dalam.
<?php
$data = [
["PHP", "HTML", "CSS"],
["MySQL", "JavaScript", "Bootstrap"]
];
foreach ($data as $kelompok) {
foreach ($kelompok as $isi) {
echo $isi . "<br>";
}
}
?>
Kode di atas akan menampilkan semua isi array, yaitu:
PHP
HTML
CSS
MySQL
JavaScript
Bootstrap
Contoh Foreach Bersarang di PHP
Sekarang kita buat contoh yang lebih jelas.
<?php
$kelas = [
"XI RPL" => ["Budi", "Ani", "Doni"],
"XI TKJ" => ["Rina", "Sinta", "Agus"],
"XI MM" => ["Rudi", "Tono", "Dewi"]
];
foreach ($kelas as $namaKelas => $daftarSiswa) {
echo "<h3>Kelas: $namaKelas</h3>";
foreach ($daftarSiswa as $siswa) {
echo "- " . $siswa . "<br>";
}
echo "<br>";
}
?>
Penjelasan kode:
$kelasadalah array utama.XI RPL,XI TKJ, danXI MMadalah key dari array.- Setiap key berisi array daftar siswa.
- Foreach pertama digunakan untuk membaca nama kelas.
- Foreach kedua digunakan untuk membaca daftar siswa di dalam kelas tersebut.
Menampilkan Data Array ke Dalam Tabel HTML
Dalam pembuatan website, data array sering ditampilkan dalam bentuk tabel.
<?php
$produk = [
[
"nama" => "Keyboard",
"harga" => 150000,
"stok" => 10
],
[
"nama" => "Mouse",
"harga" => 75000,
"stok" => 25
],
[
"nama" => "Monitor",
"harga" => 1200000,
"stok" => 5
]
];
?>
<table border="1" cellpadding="8" cellspacing="0">
<tr>
<th>No</th>
<th>Nama Produk</th>
<th>Harga</th>
<th>Stok</th>
</tr>
<?php
$no = 1;
foreach ($produk as $item) {
echo "<tr>";
echo "<td>" . $no++ . "</td>";
echo "<td>" . $item["nama"] . "</td>";
echo "<td>Rp " . number_format($item["harga"], 0, ',', '.') . "</td>";
echo "<td>" . $item["stok"] . "</td>";
echo "</tr>";
}
?>
</table>
Kode di atas akan menampilkan data produk ke dalam tabel HTML.
Fungsi number_format() digunakan untuk membuat format harga menjadi lebih rapi, misalnya:
Rp 150.000
Rp 75.000
Rp 1.200.000
Contoh Foreach Bersarang untuk Data Nilai Siswa
Berikut contoh lain penggunaan foreach bersarang untuk menampilkan data nilai siswa.
<?php
$nilaiSiswa = [
"Budi" => [
"Matematika" => 85,
"Bahasa Indonesia" => 90,
"Pemrograman" => 88
],
"Ani" => [
"Matematika" => 92,
"Bahasa Indonesia" => 87,
"Pemrograman" => 95
],
"Doni" => [
"Matematika" => 78,
"Bahasa Indonesia" => 80,
"Pemrograman" => 82
]
];
foreach ($nilaiSiswa as $nama => $nilai) {
echo "<h3>Nama Siswa: $nama</h3>";
foreach ($nilai as $mapel => $angka) {
echo $mapel . ": " . $angka . "<br>";
}
echo "<hr>";
}
?>
Hasilnya akan menampilkan nama siswa beserta nilai masing-masing mata pelajaran.
Kapan Menggunakan Array Multidimensi?
Array multidimensi digunakan ketika kita ingin menyimpan data yang memiliki banyak informasi.
Contohnya:
- Data siswa
- Data produk
- Data pegawai
- Data nilai
- Data kategori
- Data transaksi
- Data menu website
Contoh data produk:
$produk = [
[
"nama" => "Laptop",
"harga" => 7500000,
"kategori" => "Elektronik"
],
[
"nama" => "Buku PHP",
"harga" => 85000,
"kategori" => "Buku"
]
];
Dengan array multidimensi, data menjadi lebih terstruktur dan mudah dikelola.
Kesimpulan
Array multidimensi adalah array yang memiliki array lain di dalamnya. Array jenis ini sangat berguna untuk menyimpan data yang lebih kompleks.
Untuk menampilkan data array multidimensi, kita dapat menggunakan perulangan foreach. Jika struktur array memiliki lebih dari satu tingkat, maka kita bisa menggunakan foreach bersarang.
Materi ini penting dipahami karena sering digunakan dalam pembuatan website dinamis menggunakan PHP, terutama saat menampilkan data dari database, data produk, data siswa, atau data transaksi.

0 Komentar
Berkomentarlah dengan baik dan sopan