Array asosiatif adalah elemen dengan suatu nomor indek yang berupa string

Dalam tulisan sebelumnya, kita sudah belajar tentang array. Jika anda sudah siap untuk mempelajari array yang lebih rumit, silahkan baca tutorial ini. Array asosiatif mengindeks elemen di dalamnya menggunakan nama yang kita tentukan dan bukan menggunakan nomor seperti yang sudah pernah kita pelajari.

Cara membuatnya adalah menggunakan fungsi array. Dalam fungsi array, kita bisa mengeset sepasang atribut sebagai nama elemen dan nilai elemen itu sendiri menggunakan gabungan “=” dan “>”, misalnya: nama_elemen=>”nilai”. Contoh riilnya adalah sebagai berikut:

$pacarku = array (

nama=>”Juwita”,

Sifat=>”Baik hati, tidak sombong dan rajin menabung”,

rambut=>”panjang terurai”,

umur=>17

);

Di sini, kita membuat array bernama pacarku, dengan nama elemen “nama”,”Sifat”,”rambut” dan “umur”; dan kita mengisi masing-masing nama elemen tersebut dengan nilai (nama diisi dengan “Juwita”, Sifat”Baik hati, tidak sombong dan rajin menabung”, dan seterusnya).

Setelah array kita buat, kita dapat mengambil bagian manapun dari array tersebut dengan menggunakan “nama elemen” yang sudah kita alokasikan, contoh:

print $pacarku[nama];

akan memberikan kita nilai Juwita. Kita dapat juga mengeset setiap nama elemen secara sendiri-sendiri, misalnya:

$pacarku[nama] = “Juwita”;
$pacarku[Sifat] = ” Baik hati, tidak sombong dan rajin menabung “;
$pacarku[rambut] = “panjang terurai”;
$pacarku[umur] = 17;

Sebelum topik array ini berakhir, mari kita buat sedikit lebih rumit. Kita akan menggunakan kekuatan array yang sebenarnya dengan membuat array multi dimensi (kali kayak dimensi ruang dan waktunya Einstein ya?). Sebuah array multi dimensi adalah array (misalnya pacar-pacar kita) yang terbuat dari array yang lain (yaitu array-array setiap pacar kita, berisi nama, sifat dan umurnya).

Kita membuat array multi dimensi dengan membuat sebuah array:

$hewan = array

(

);

…dan kemudian kita isi array tersebut dengan array-array hewan di rumah kita yang sudah kita definisikan nama elemennya seperti ini:

$pacarku = array (

array ( nama=>”Rosa”,

sifat=>”Baik Hati”,

umur=>17 ),

array ( nama=>”Ruby”,

sifat=>”Tidak Sombong”,

umur=>27 ),

array ( nama=>”Sri”,

sifat=>”Rajin Menabung”,

umur=>37 ),

array ( nama=>”Nety”,

sifat=>”Pemalas”,

umur=>15 )

);

Untuk menggunakannya, kita dapat mengambil setiap bagian informasi dari array kita tersebut dengan menyebut nama array ($pacar), nomor dari sub-array yang kita inginkan (Rosa adalah [0], Ruby dengan [1], dst) dan kemudian menyebut nama elemen untuk atribut yang kita inginkan (nama, sifat dan umur). Ngomong-omong, kalau melihat daftar pacarnya, pasti dia orang yang hobi berpetualang, dari yang daun muda sampai yang tua disamber semua. Payah.

Untuk mengetahui umur Nety, kita akan menuliskan seperti ini:

print $pacarku[3][umur];

Berikut ini adalah keseluruhan kode yang sudah kita buat tadi. Semua kita buat dalam satu halaman, namun perlu diingat bahwa anda dapat mengeset array di suatu tempat (katakanlah dalam kode atau fields di form yang berada di halaman lain atau dalam database) dan mengambil informasi yang ada di dalamnya dari tempat lain. Di dini kita akan meletakkan semua dalam satu halaman agar anda dapat melihat semuanya sekaligus.

Array Pacar

“Rosa”,

sifat=>”Baik Hati”,

umur=>17 ),

array ( nama=>”Ruby”,

sifat=>”Tidak Sombong”,

umur=>27 ),

array ( nama=>”Sri”,

sifat=>”Rajin Menabung”,

umur=>37 ),

array ( nama=>”Nety”,

sifat=>”Pemalas”,

umur=>15 )

);

print $pacarku[2][“sifat”];
print (“
“);
print $pacarku[3][“umur”];

?>

akan menampilkan :

Rajin Menabung

15

Apa yang sudah kita lakukan adalah membuat array yang mengandung sub array untuk setiap pacar kita yang berisi informasi detil tentang mereka; kemudian menampilkan sebuah kalimat yang menggunakan sifat dan umur dari 2 pacar kita yang terakhir.