Array asosiatif
Array asosiatif adalah array yang tidak menggunakan angka sebagai kunci di setiap nilainya.
Jika tidak ditentukan kunci dari sebuah elemen di array, PHP akan otomatis memberikan kuncinya berupa angka.
Lihat code di samping. Kami telah mendeklarasikan dua variabel sebagai array. Apakah anda bisa menebak array mana yang merupakan array asosiatif? Betul,
$array_saya
adalah array asosiatif.Kedua array tersebut memiliki isi yang sama. Perbedaannya adalah bagaimana kita mengakses elemen-elemen di array tersebut.
Contoh:
//
membuat array biasa
$array_kamu
= array(1610, 'VOC Belanda', 350);
//
membuat array asosiatif
$array_saya
= array( 'tahun' => 1610,
'organisasi' => 'VOC Belanda',
'total' => 350);
//
cara mencetak array biasa
echo
$array_kamu[0];
echo
"\n";
echo
$array_kamu[1];
echo
"\n";
//
cara mencetak array asosiatif
echo
$array_saya[ 'tahun'];
echo
"\n";
echo
$array_saya[ 'organisasi'];
Mengakses array asosiatif
Ketika kita mengakses nilai dari array asosiatif, yang membedakan adalah kuncinya. Alih-alih angka, kita menggunakan string:echo $monas[2]; // mencetak 1975 echo $monas_asos['tahun']; // juga mencetak 1975Disini kita akan belajar lagi bagaimana bergunanya kunci yang spesifik di sebuah array.
Contoh:
//
deklarasi $monas
$monas
= array("Jalan Merdeka", 132, 1975 );
//
ceritakan tentang monas dibawah ini dengan menggunakan $monas
echo
"Monas memiliki tinggi 132 meter dan dibangun pada 1975
berlokasi di Jalan Merdeka.";
echo
"\n"; // ini berguna untuk membuat garis baru
//
deklarasi $monas_asos
$monas_asos
= array( 'lokasi' => "Jalan Merdeka",
'tinggi' => 132,
'tahun' => 1975);
echo "Monas memiliki tinggi ".$monas_asos['tinggi']."
meter dan dibangun pada ".$monas_asos['tahun']." berlokasi
di".$monas_asos['lokasi'].".";
//
ceritakan tentang monas dibawah ini dengan menggunakan $monas_asos
Mengiterasi array asosiatif
Mengakses seluruh elemen (me-loop) array asosiatif semudah melakukannya di sebuah array biasa, Tapi anda harus mengambil nilainya dengan kunci yang spesifik, bukan dengan integer.Seperti yang telah kita pelajari, untuk me-loop array biasa, kita bisa melakukannya dengan
for
. Jika kita
melakukannya untuk array asosiatif, kita menggunakan foreach
seperti ini:$arr_asos = array('nama'=>'PHP', 'tahun'=>1995, 'pembuat'=>'R Lerdorf'); foreach ($arr_asos as $kunci=>$nilai) { echo $kunci . ' : ' . $nilai . "\n"; }akan mengeluarkan output seperti ini:
nama : PHP tahun : 1995 pembuat : R Lerdorf Contoh: $php = array('website' => "www.php.net", 'variabel' => "dinamis", 'versi' => 5.5); foreach ($php as $kunci => $nilai){ echo $kunci.' : '.$nilai."\n"; }
Array Multidimensi
Sejauh ini, kerja yang bagus!Anda tidak hanya bisa menyimpan string atau angka di dalam array, tapi anda juga bisa menyimpan array! Array di dalam array! Ini yang disebut dengan array multidimensi.
Kita melakukannya seperti kita membuat array biasa, tetapi di setiap elemennya kita memasukkan array alih-alih angka atau string. Contohnya bisa dilihat di code di samping.
$meja
adalah sebuah array yang di
dalamnya memiliki tiga elemen/baris. Dimana setiap baris kita anggap
adalah sebuah laci. Dan di setiap lacinya kita bisa menemukan
elemen-elemen.Untuk mengakses sebuah elemen, kita harus mengambil baris dari array kita selayaknya kita mengambil elemen di array satu dimensi dengan menggunakan
[ ]
.
Jika kita ingin mengambil baris pertama, kita menuliskan
$meja[0]
.
Maka kita akan mendapatkan array( 'gunting',
'pulpen')
. Dari sini, jika kita ingin mengambil 'gunting'
,
maka kita bisa menuliskan $meja[0][0]
.Ingat bahwa perhitungan array dimulai dari 0.
Contoh:
//
deklarasi $meja yang memiliki beberapa array sebagai elemennya
$meja
= array( array( 'gunting', 'pulpen'),
array('handphone', 'earphone'),
array('kue', 'minuman'),
array('emas murni', 'saham google'),
);
//
anggap setiap baris/array di $meja adalah sebuah laci
//
kita akses laci ketiga, benda pertama
echo
$meja[2][0];
echo
"\n";
//
kita akses laci kedua, benda kedua
echo
$meja[1][1];
echo
"\n";
//
akses elemen di array yang anda buat
echo
$meja[3][1];
echo
"\n";
Komentar
Posting Komentar