PHP - Array Multidimensi: Panduan untuk Pemula
Hai teman-teman, para ahli PHP masa depan! Hari ini, kita akan memulai sebuah perjalanan menarik ke dunia array multidimensi. Jangan khawatir jika itu terdengar sedikit menakutkan - saya berjanji kita akan mengambil langkah demi langkah, dan pada akhir panduan ini, Anda akan dapat bermain dengan array seperti seorang ahli!
Apa Itu Array Multidimensi?
Sebelum kita masuk ke dalam, mari kita mulai dengan dasar-dasar. Gamalkanlah array sebagai daftar sederhana dari item, seperti daftar belanja. Sekarang, bagaimana jika Anda ingin mengatur belanja Anda berdasarkan toko? Itulah tempat array multidimensi berguna!
Array multidimensi adalah array yang terdiri dari beberapa array. Itu seperti memiliki lemari filing (array utama) dengan berbagai drawer (sub-array), masing-masing berisi item yang berbeda.
mari lihat contoh sederhana:
$shopping = array(
"Grocery" => array("Apples", "Bread", "Milk"),
"Hardware" => array("Hammer", "Nails", "Screwdriver")
);
Dalam contoh ini, $shopping
adalah array multidimensi kami. Itu mengandung dua sub-array: "Grocery" dan "Hardware", masing-masing dengan daftar itemnya sendiri.
Mengakses Elemen dalam Array 2D
Sekarang kita telah menciptakan array multidimensi, bagaimana kita mengakses elemennya? Itu sangat sederhana! Kita gunakan beberapa kurung siku []
, satu untuk setiap dimensi.
<?php
$shopping = array(
"Grocery" => array("Apples", "Bread", "Milk"),
"Hardware" => array("Hammer", "Nails", "Screwdriver")
);
echo $shopping["Grocery"][0]; // Keluaran: Apples
echo $shopping["Hardware"][2]; // Keluaran: Screwdriver
?>
Dalam pernyataan echo
pertama, kita mengakses sub-array "Grocery" dan kemudian elemen pertama (indeks 0) di dalamnya. Pernyataan echo
kedua mengakses elemen ketiga (indeks 2) dalam sub-array "Hardware".
Mengulang Array 2D
Sekarang, bagaimana jika kita ingin melewati semua item dalam array multidimensi kita? Itulah tempat iterasi berguna. Kita dapat menggunakan loop foreach
bersarang untuk mengulang setiap dimensi array.
<?php
$shopping = array(
"Grocery" => array("Apples", "Bread", "Milk"),
"Hardware" => array("Hammer", "Nails", "Screwdriver")
);
foreach ($shopping as $store => $items) {
echo "Belanja di $store:\n";
foreach ($items as $item) {
echo "- $item\n";
}
echo "\n";
}
?>
Kode ini akan mengeluarkan:
Belanja di Grocery:
- Apples
- Bread
- Milk
Belanja di Hardware:
- Hammer
- Nails
- Screwdriver
Loop foreach
luar mengulang setiap toko, sedangkan loop foreach
dalam mengulang item di setiap toko.
Array Multidimensi (Lebih Dari 2D)
Ayo kita naikkan tingkatannya! Array dapat memiliki lebih dari dua dimensi. mari buat array 3D untuk merepresentasikan sekolah dengan kelas dan siswa:
<?php
$school = array(
"Grade 1" => array(
"Class A" => array("John", "Emma", "Michael"),
"Class B" => array("Sophia", "William", "Olivia")
),
"Grade 2" => array(
"Class A" => array("James", "Ava", "Alexander"),
"Class B" => array("Charlotte", "Benjamin", "Mia")
)
);
// Mengakses siswa tertentu
echo $school["Grade 1"]["Class A"][1]; // Keluaran: Emma
// Mengulang seluruh struktur
foreach ($school as $grade => $classes) {
echo "$grade:\n";
foreach ($classes as $class => $students) {
echo " $class:\n";
foreach ($students as $student) {
echo " - $student\n";
}
}
echo "\n";
}
?>
Ini akan mengeluarkan seluruh struktur sekolah, tingkat demi tingkat, kelas demi kelas, dan siswa demi siswa.
Penelusuran Rekursif Array Multidimensi
Ketika berurusan dengan array yang mungkin memiliki jumlah dimensi yang tak tentu, fungsi rekursif datang ke bantuan kita. Berikut adalah fungsi yang dapat menelusuri array multidimensi apa pun:
<?php
function traverseArray($arr) {
foreach ($arr as $key => $value) {
if (is_array($value)) {
echo "$key adalah array:\n";
traverseArray($value);
} else {
echo "$key: $value\n";
}
}
}
$complex_array = array(
"Fruits" => array(
"Red" => array("Apple", "Cherry"),
"Yellow" => "Banana"
),
"Vegetables" => array(
"Leafy" => array("Spinach", "Kale"),
"Root" => "Carrot"
),
"Quantity" => 10
);
traverseArray($complex_array);
?>
Fungsi ini akan bekerja melalui array apa pun, tanpa menghiraukan berapa banyak dimensi yang ada!
Kesimpulan
Dan begitulah, teman-teman! Kita telah mengemban dunia menarik array multidimensi dalam PHP. Ingat, latihan membuat sempurna, jadi jangan khawatir untuk mencoba konsep ini. Buat array kompleks Anda sendiri, cobalah mengakses elemen yang berbeda, dan lihat apa yang terjadi saat Anda memodifikasinya.
Sebelum kita selesai, mari rangkum metode kunci yang kita pelajari untuk bekerja dengan array multidimensi:
Metode | Deskripsi |
---|---|
Pembuatan Array | Gunakan sintaks array() atau [] bersarang |
Pengaksesan Elemen | Gunakan beberapa kurung siku [][]
|
Iterasi | Gunakan loop foreach bersarang |
Penelusuran Rekursif | Buat fungsi rekursif |
Tetap mengoding, tetap belajar, dan sebelum Anda mengetahui, Anda akan dapat membuat struktur data kompleks dengan mudah. Sampaijumpa lagi, selamat PHPing!
Credits: Image by storyset