Untuk menyimpan nilai dengan lebih dari satu kunci bisa gunakan array multidimensi.
PHP – Array Multidimensi
Array multidimensi adalah larik yang berisi satu atau lebih larik.
PHP mendukung array multidimensi yang memiliki kedalaman dua, tiga, empat, lima, atau lebih. Namun, array yang lebih dari tiga level sulit untuk dikelola bagi kebanyakan orang.
Dimensi array menunjukkan jumlah indeks yang diperlukan untuk memilih elemen.
- Untuk array dua dimensi, memerlukan dua indeks untuk memilih elemen
- Untuk array tiga dimensi, memerlukan tiga indeks untuk memilih elemen
PHP – Array Dua Dimensi
Array dua dimensi adalah larik-larik (larik tiga dimensi adalah larik larik larik).
Pertama, lihat tabel berikut :
Nama | Stock | Terjual |
---|---|---|
Volvo | 22 | 18 |
BMW | 15 | 13 |
Saab | 5 | 2 |
Land Rover | 17 | 15 |
Kita dapat menyimpan data dari tabel di atas dalam array dua dimensi, seperti ini:
$cars = array (
array("Volvo",22,18),
array("BMW",15,13),
array("Saab",5,2),
array("Land Rover",17,15)
);
Sekarang array dua dimensi $cars berisi empat array dan ini memiliki dua indeks: baris dan kolom.
Untuk mendapatkan akses ke elemen array $cars kita harus menunjuk ke dua indeks (baris dan kolom):
Contoh :
<?php $cars = array ( array("Volvo",22,18), array("BMW",15,13), array("Saab",5,2), array("Land Rover",17,15) ); echo $cars[0][0].": In stock: ".$cars[0][1].", terjual: ".$cars[0][2].".<br>"; echo $cars[1][0].": In stock: ".$cars[1][1].", terjual: ".$cars[1][2].".<br>"; echo $cars[2][0].": In stock: ".$cars[2][1].", terjual: ".$cars[2][2].".<br>"; echo $cars[3][0].": In stock: ".$cars[3][1].", terjual: ".$cars[3][2].".<br>"; ?> //Output : Volvo: In stock: 22, terjual: 18. //Output : BMW: In stock: 15, terjual: 13. //Output : Saab: In stock: 5, terjual: 2. //Output : Land Rover: In stock: 17, terjual: 15.
Kita juga bisa meletakkan perulangan for
di dalam perulangan for
lainnya untuk mendapatkan elemen dari array $cars (kita masih harus menunjuk ke dua indeks):
Contoh :
<?php $cars = array ( array("Volvo",22,18), array("BMW",15,13), array("Saab",5,2), array("Land Rover",17,15) ); for ($row = 0; $row < 4; $row++) { echo "<p><b>Row number $row</b></p>"; echo "<ul>"; for ($col = 0; $col < 3; $col++) { echo "<li>".$cars[$row][$col]."</li>"; } echo "</ul>"; } ?> /*Output : Row number 0 Volvo 22 18 Row number 1 BMW 15 13 Row number 2 Saab 5 2 Row number 3 Land Rover 17 15 */