Saturday, October 4, 2014

Jenis-jenis Array pada PHP

Seperti yang telah ditulis pada artikel sebelumnya tentang array, selanjutnya kita akan mengenal jenis-jenis array pada PHP. Ada tiga jenis array pada PHP, yaitu array terindeks angka, array assosiatif dengan key name dan array multi-dimensi.

Jenis array yang telah ditulis pada artikel sebelumnya merupakan jenis array terindeks angka. Selain itu ada array assosiatif yaitu array yang menggunakan key name untuk menetapkan sebuah nilai. Dengan kata lain angka pada array terindeks diganti dengan key name yang berkaitan dengan data dalam array. Lalu ada array multi dimensi yaitu array didalam array, sehingga kita bisa menggunakan beberapa nama kunci atau indek dalam satu array.

1. Array Terindeks Angka

Merupakan array yang mengidentifikasi urutan isinya dengan indeks angka. Contoh data array nomor satu akan diindeks 0, kedua diindeks 1 dan seterusnya. Penulisan array terindeks cukup menaruh indeks dalam kurung kotak, contoh: $angka[0].

Ada dua cara dalam membuat dan mengisi data pada array terindeks, yaitu:
  • Membuat array dengan indeks data otomatis

    Untuk membuat indeks secara otomatis bisa dilakukan dengan dua cara, yaitu:
    a. Penulisan serentak
    Contoh:
     $buah=array("Semangka","Jeruk","Apel");  
    
    b. Penulisan satu per satu
    Contoh:
     $buah[]="Semangka";  
     $buah[]="Jeruk";  
     $buah[]="Apel";  
  • Membuat array dengan indeks data manual

    Contoh:
     $buah[0]="Semangka";   
     $buah[1]="Jeruk";   
     $buah[2]="Apel";   
    

Contoh menampilkan semua data dari array terindeks dengan logika perulangan FOREACH :

<?php 
$buah = array("Semangka","Jeruk","Apel","Markisa"); 
 
foreach ($buah as $value) {
  echo "$value <br>";
}
?> 

2. Array Assosiatif

Pada array assosiatif tidak mengunakan indeks angka namun menggunakan key name. Beberapa sering menyebut array assosiatif sebagai array dengan indeks string. Namun ini tidak sepenuhnya tepat karena array assosiatif tidak seperti indeks angka yang bisa mengindeks otomatis. Saat membuat array assosiatif harus menyebut key name terlebih dahulu kemudian diikuti dengan nilainya. Ada dua cara membuat array assosiatif yaitu:
  • Penulisan serentak menggunakan tanda "=>"
     $nama-array=array("key1"=>"value1","key2"=>"value2","key3"=>"value3",...dst);  
    
    Contoh:
     $karyawan=array("Agus"=>"Jepara","Budi"=>"Jakarta","Candra"=>"Semarang");  
    
  • Penulisan satu persatu tiap-tiap key name
     $nama-array['key1']="value1";  
     $nama-array['key2']="value2";  
     $nama-array['key3']="value3";
    
    Contoh :
     $karyawan['Agus']="Jepara";  
     $karyawan['Budi']="Jakarta";  
     $karyawan['Candra']="Semarang";  
    

Contoh menampilkan semua data dari array terindeks dengan logika perulangan FOREACH :

 <?php
 $karyawan=array("Agus"=>"Jepara","Budi"=>"Jakarta","Candra"=>"Semarang");   
 foreach($karyawan as $x=>$x_value) {  
  echo "Key=" . $x . ", Value=" . $x_value;  
  echo "<br>";  
 }  
 ?>  

3. Array multi dimensi

Adalah array yang berisi satu array atau lebih atau sama saja dengan array didalam array. Ini diperlukan ketika kita membutuhkan penyimpanan lebih dari satu key name. PHP mendukung kedalama array didalam array sampai banyak namun rata-rata kedalaman lebih dari tiga sangat sulit untuk me-manage-nya.

Contoh penggunaan array multi dimensi adalah pada tabel berikut:

Nama Alamat Umur
Agus Jepara 20
Budi Jakarta 5
Candra Semarang 45
Dewi Kudus 12
Untuk menyimpan data diatas, kita menggunakan array dua dimensi berikut ini:
 $karyawan = array  
  (  
  array("Agus","Jepara",20),  
  array("Budi","Jakarta",5),  
  array("Candra","Semarang",45),  
  array("Dewi","Kudus",12)  
  );  

Contoh program lengkap menampilkan array multi dimensi dengan perulangan FOR :

 <?php  
  $karyawan = array   
  (   
  array("Agus","Jepara",20),   
  array("Budi","Jakarta",5),   
  array("Candra","Semarang",45),   
  array("Dewi","Kudus",12)   
  );   
  for ($row = 0; $row < 4; $row++) {  
  echo "<p><b>Baris nomor $row</b></p>";  
  echo "<ul>";  
  for ($col = 0; $col < 3; $col++) {  
   echo "<li>".$karyawan[$row][$col]."</li>";  
  }  
  echo "</ul>";  
 }  
 ?>  
Referensi :

0 komentar

Post a Comment