Di artikel sebelumnya, telah dijelaskan array yang merupakan daftar pasangan key (index) dan nilai.
Namun, terkadang Anda ingin menyimpan nilai dengan lebih dari satu kunci. Untuk ini, kita bisa memakai array multidimensi.
PHP – Array Multidimensional
Array multidimensi (Multidimensional) di PHP adalah jenis array yang memiliki struktur berlapis atau terdiri dari beberapa dimensi. Setiap elemen pada array tersebut bisa berupa array lagi, sehingga membentuk struktur yang kompleks.
PHP mendukung array multidimensi dengan kedalaman dua, tiga, empat, lima, atau lebih. Namun, array dengan kedalaman lebih dari tiga tingkat sulit dikelola bagi kebanyakan orang.
Dimensi array menunjukkan jumlah index yang Anda perlukan untuk memilih elemen.
- Untuk array dua dimensi, Anda memerlukan dua index untuk memilih elemen
- Untuk array tiga dimensi, Anda memerlukan tiga index untuk memilih elemen
PHP – Array Dua Dimensi
Array dua dimensi di PHP adalah jenis array yang memiliki struktur berbentuk matriks, yaitu terdiri dari baris dan kolom. Array ini memiliki dua dimensi atau lapisan, yaitu baris dan kolom. Setiap elemen pada array tersebut memiliki dua index, yaitu index baris dan index kolom.
Pertama, lihat tabel berikut:
Nama | Stok | Terjual |
---|---|---|
Volvo | 22 | 18 |
BMW | 15 | 13 |
Saab | 5 | 2 |
Land Rover | 17 | 15 |
Kita dapat menyimpan data dari tabel di atas dalam larik dua dimensi, seperti ini:
$mobil = array(
array("Volvo",22,18),
array("BMW",15,13),
array("Saab",5,2),
array("Land Rover",17,15)
);
Sekarang array $mobil dua dimensi berisi empat array, dan memiliki dua index: baris dan kolom.
Untuk mendapatkan akses ke elemen array $mobil kita harus menunjuk ke dua index (baris dan kolom):
Contoh
<!DOCTYPE html>
<html>
<body>
<?php
$mobil = array(
array("Volvo",22,18),
array("BMW",15,13),
array("Saab",5,2),
array("Land Rover",17,15)
);
echo $mobil[0][0].": Stok tersedia: ".$mobil[0][1].", terjual: ".$mobil[0][2].".<br>";
echo $mobil[1][0].": Stok tersedia: ".$mobil[1][1].", terjual: ".$mobil[1][2].".<br>";
echo $mobil[2][0].": Stok tersedia: ".$mobil[2][1].", terjual: ".$mobil[2][2].".<br>";
echo $mobil[3][0].": Stok tersedia: ".$mobil[3][1].", terjual: ".$mobil[3][2].".<br>";
?>
</body>
</html>
Kita juga bisa meletakkan loop for di dalam loop for lainnya untuk mendapatkan elemen dari array $mobil (kita masih harus menunjuk ke dua index):
Contoh
<!DOCTYPE html>
<html>
<body>
<?php
$mobil = array(
array("Volvo",22,18),
array("BMW",15,13),
array("Saab",5,2),
array("Land Rover",17,15)
);
for ($baris = 0; $baris < 4; $baris++) {
echo "<p><b>Nomor baris $baris</b></p>";
echo "<ul>";
for ($kolom = 0; $kolom < 3; $kolom++) {
echo "<li>".$mobil[$baris][$kolom]."</li>";
}
echo "</ul>";
}
?>
</body>
</html>
Tutorial sebelumnya : PHP Associative Array
Tutorial setelahnya : PHP Array Sorting
Semua Tutorial PHP : Tutorial PHP