Array pada PHP


05/10/2016 09:15:42 437

Array atau dalam bahasa Indonesia disebut dengan Larik dapat dikatakan suatu variabel dengan banyak nilai/data didalamnya. Untuk mudah memahami array, kita dapat mengilustrasikan sebagai berikut

  1. Terdapat dua buah data, misalkan data nama mahasiswa "Budi" dan "Dedi"
  2. Untuk menampung nama tersebut sangat mudah dengan membuat dua variabel $nama1="budi"; $nama2="Dedi";
  3. Ketika terdapat dua lagi mahasiswa "Yuni" dan "Ani" maka kita tambah dua variabel sehingga menjadi, $nama1="budi"; $nama2="Dedi";$nama3="Yuni"; $nama4="Ani";
  4. Setiap penambahan data akan sama seperti langkah 3, sehingga jumlah variabel sama dengan jumlah data,
  5. jika terdapat 25 mahasiswa tentu akan membuat 25 variabel sehingga pendekatan ini tidak efektif dan efisien
  6. Array ialah satu variabel berisi banyak data, sehingga satu variabel akan dapat menampung data dari 1 sampai n, ini tentu keterbalikan dari pendekatan diatas.

Pendefinisian array

Array didefinsikan sama seperti variabel pada umumnya, namun data dimasukan dalam fungsi array() atau []. Berikut ialah contoh pendefinisian variabel array:

$nama = array("Budi", "Dedi");

atau secara singkat menggunakan []:

$nama = ["Budi", "Dedi"];

Index dan Akses Array

Array Numeric

Suatu nilai dari suatu array memiliki index dan nilai. Index digunakan untuk menunjukan posisi suatu nilai didalam suatu array. Index atau juga kadang disebut kunci (key) seperti pada contoh diatas ialah index numeric dan penomoronnya dimulai dari angka "0". Sehingga pada contoh dibawah

$nama = ["Budi", "Dedi"];

"Budi memiliki index 0 dan "Dedi" memiliki index 1. Index digunakan untuk mengakses array yang kemudian dapat digunakan untuk menampilkan atau mengganti nilai suatu array.

// Data
$nama = array ("Budi", "Dedi");

// Contoh 1

echo $nama;
//Output: Error

// Contoh 2

echo $nama[1];
// Ouput : Dedi

// Contoh 3
$nama[1] = "Agus";
echo $nama;
// Output: Agus

// Contoh 4
print_r($nama);
//ouput: array([0] => "Budi", [1] => "Dedi" )

Array Associative

Jika pada array numeric index-nya menggunakan angka, maka pada array associative index-nya menggunakan string. Berikut ialah contoh penggunaaan array associative:

// Definisi array Associative
$anggota = array(
    "nama" => "Rofilde Hasudungan",
    "gelar" => "S. Kom, M. Sc",
    "prodi" => "Teknik Informatika"
);

// Akses array associative
echo $anggota['nama'];
//ouput: Rofilde Hasudungan 

// Assign data
$anggota['prodi'] = "Ilmu Komputer";
$anggota['keahlian'] = "DNA Computing"
echo $anggota['prodi'];
// output: Ilmu Komputer
echo $anggota['keahlian'];
//output: DNA Computing

// Menampilkan semua data
print_r($anggota);

Array Multidimensi

Array multidimensi secara singkat ialah array yang terdiri atau tersusun dari satu atau lebih array. Untuk memudahkan pemahaman, untuk membuat array ini ialah dengan membuat sebuah buah array satu misalkan $array1, dan untuk membuat array multidimensi misalkan dua dimensi dengan membaut variabel array yang berisi array1 sebagai contoh berikut:

$array1 = array("PHP", "Belajar");

$array2dimensi = array($array1);

// Contoh untuk mengases elemen array,
echo $array2dimensi[0][1];
//ouput: Belajar

Untuk mengakses nilai dari array multidimensi, misalkan array dua dimensi dengan menyebutkan index dari dimensi pertama dan index dari dimensi kedua seperti contoh diatas.

Perulangan pada Array

Untuk melakukan perulangan pada array dapat menggunakan for atau while seperti pada tutorial ini (Perulangan pada PHP). Namun, secara khusus terdapat perulangan khusus array yakni foreach. Berikut ialah contoh penggunaan perulangan dengan menggunakan foreach

$nama = array("Andi", "Joko", "Budi");

foreach($nama as $index => $value) {
    echo $index . ' : ' . $value . '<br>';
}

//output: 
// 0 : Andi
// 1: Joko
// 2: Budi

Sedangkan untuk array multidimensi ialah sebagai berikut:

$lectures = array(
    array(
        'name' => "Rofilde Hasudungan",
        'prodi' => 'Ilmu Komputer'
    ),
    array(
        'name' => "Anto",
        'prodi' => 'Elektro'
    ),
    array(
        'name' => "Dian",
        'prodi' => 'Biologi'
    ),
);

foreach($lectures as $lecture)
{
    echo "Nama : " . $lecture['name'];
    echo "Prodi : " . $lecture['prodi'];
    echo "<br>";
}

Fungsi pada Array

Jumlah array dengan count()

$mahasiswa = array("Andi", "Siti", "Budi",  "Anggun");

echo count($mahasiswa);
// Output: 4

Urutkan array berdasarkan value dengan sort()

$mahasiswa = array("Andi", "Siti", "Budi",  "Anggun");

sort($mahasiswa);

// Output: array([0] => "Andi",  [1] => "Anggun", [2] => "Budi", [3] => "Siti")

Urutkan array berdasarkan index (key) dengan ksort()

$mahasiswa = array(2 => "Andi", 1 => "Siti", 0 => "Budi",  3 => "Anggun");

asort($mahasiswa);

// Output: array([0] => Budi, [1] => Siti,  [2] => Andi, [3] => Anggun);

Menggabungkan array dengan array_merge()

$array1 = array(2, 3, 4);
$array2 = array("Jambu", "Mangga", "Manggis");
$array3 = array_combine($array1, $array2);

print_r($array3);

// Ouput: array([0] => 2, [1] => 3, [2] => 4, [3] => Jambu, [4] => Mangga, [5] => Manggis)

Mengkombinasikan array dengan array_combine()

$array1 = array(2, 3, 4);
$array2 = array("Jambu", "Mangga", "Manggis");

$array3 = array_merge($array1, $array2);

print_r($array3);

// Ouput: array([2] => Jambu, [3] => Mangga, 4 => Manggis))

Membuat array dari string delimter tertentu menggunakan array_explode()

$str = "andi, siti, budi, anggun";
$array = array_explode(", ", $str);

print_r($array);
// Output: array([0]=>andi, [1]=>siti, [2]=>budi, [3]=>anggun);

Membuat membuat string dengan dari array array_implode()

$array = array(0=>andi, 1=>siti, 2=>budi, 3=>anggun);
$str = array_implode(", ", $array);
echo $str;
// Output: andi, siti, budi, anggun

Mengekstrak array menjadi variable dengan extract()

$dosen = array('nama' => 'Rofilde Hasudungan', 'tempat_lahir' => 'Muara Marah');

extract($dosen);

echo $nama;
// Output: Rofilde Hasudungan
echo $tempat_lahir;
// Output: Muara Marah