Array
di PHP adalah tipe variabel spesial, karena dengan array kita dapat mengakses
sekumpulan nilai dengan menggunakan satu nama variabel. Mekanisme pengaksesan
ini diatur dalam bentuk pemetaan (mapping) dari sekumpulan nilai (values)
ke sekumpulan kunci (keys) atau indeks. Sebagai contoh,
Ø Array Multidimensi
Array multi dimensi adalah array yang ada dalam array.
Dalam array tersebut dapat berisi beberapa array lagi. Array multi dimensi ini
dapat memudahkan membuat program karena dapat membuat beberapa array sekaligus
sehingga meringkas beberapa perintah operasi.
Berikut contoh penulisan array multi
dimensi dalam sebuah perintah program:
<html>
<head>
<title>Array
: Multidimensi</title>
</head>
<body>
<h1>Array
: Multidimensi</h1>
<?php
//arraymulti.php
//membuat
array multidimensi.
$data=@array(
Array(Judul
=> "Net Force",
Pengarang => "Clancy, Tom",
Rating => "4",
),
Array(Judul
=> "Every Dead Thing",
Pengarang => "Connolly, Jhon",
Rating => "5",
),
Array(Judul
=> "Driven to Extremes",
Pengarang => "Alen, James",
Rating=> "4",
),
Array(Judul
=> "Dark Hallow",
Pengarang => "Connolly, Jhon",
Rating=> "4",
),
Array(Judul
=> "Bombay Ice",
Pengarang => "Forbes, Leslie",
Rating=> "5",
)
);
Foreach($data
as $val)
{
Foreach($val as $key => $data2)
{
Echo"$key : $data2";
}
Echo"<br>";
}
?>
</body>
</html>
Hasil Script diatas apabila dijalankan
pada browser, akan tampak seperti gambar berikut:
Data
yang ada pada sebuah array bersifat dinamis, artinya dapat ditambah, digabung
dengan array yang lain, dihapus, maupun diurutkan sesuai pola tertentu. Untuk
memanipulasi data array, anda dapat menggunakan beberapa fungsi yang akan
digunakan dan dijelaskan pada bab ini.
Ø Array Sebagai Himpunan
Array dalam PHP dapat dianggap pula sebagai himpunan
sehingga kita dapat memberikan operasi himpunan kepada array PHP.
Operasi Himpunan yang dapat dilakukan :
1.
Penggabungan
himpunan – union
2.
Irisan –
intersection
3.
Selisih –
Difference
1.
Penggabungan Himpunan
Penggabungan array seringkali dibutuhkan untuk
memudahkan manipulasi data dari beberapa array, dengan cara menggabungkan data
array tersebut menjadi satu kemudian baru dimanipulasi.
Operasi penggabungan dilakukan untuk memudahkan
menggabungkan dua array menjadi satu array. Fungsi yang dapat digunakan adalah
array_union() atau array_merge().
Berikut contoh Menggabungkan 2 array
dengan operasi himpunan.
<html>
<head>
<title>Array
: Union</title>
</head>
<body>
<h1>Array
: Union</h1>
<?php
$ar_a=array(1,2,5,7,8);
print"Isi
Array \$ar_a <br>" ;
print_r($ar_a);
print"
<br>" ;
$ar_b=array("abc",5,7,90);
print"Isi
Array,ii9 \$ar_b<br>" ;
print_r($ar_b);
print"
<br>" ;
$gabung =
array_merge($ar_a, $ar_b);
print"Isi
Array \$gabung <br>" ;
print_r($gabung);
print" <br>";
?>
</body>
</html>
Print_r() adalah
fungsi yang digunakan untuk mencetak isi array secara otomatis (dummping).
Hasil dari array_merge() disimpan dalam variabel array $gabung.
Hasil dari Array_Union.php
Pada
array $gabung, maka array $gabung akan memiliki 9 elemen – elemen dari
$ar_a disimpan pada bagian awal dan elemen dari $ar__b disimpan pada bagian
berikutnya. Pada fungsi diatas maka ada terjadi nilai yang berganda yang
berasal dari $ar_a dan $ar_b yang sama tetapi dinyatakan sebagai elemen sendiri
– sendiri.
Proses union
seharusnya merupakan proses penggabungan array_merge kemudian
Dilakukan array_unique.
Fungsi array_unique() dapat digunakan untuk
menghilangkan duplikasi data ini, berikut adalah contoh scriptnya :
<html>
<head>
<title>Array :
Intersect</title>
</head>
<body>
<h1>Array :
Intersect</h1>
<?php
$ar_a=array(1,2,5,7,8);
print("Isi Array \$ar_a
<br>");
print_r($ar_a);
print("<br>");
$ar_b=array("abc",5,7,90);
print("Isi Array
\$ar_b<br>");
print_r($ar_b);
print("<br>");
$irisan=array_intersect($ar_a,
$ar_b);
print("Isi Array
\$irisan <br>");
print_r($irisan);
print("<br>");
?>
</body>
</html>
Hasil dari perintah array_unique():
2.
Irisian
Irisan dari dua buah himpunan digunakan untuk mengetahui isi
yang sama dari dua buah himpunan.
Dengan
menggunakan operasi dua buah himpunan, maka kita dapat dengan mudah untuk
mendapatkan nilai-nilai yang sama yang ada pada dua buah himpunan, tanpa kita
harus melakukan penelusuran dan perbandingan isi kedua himpunan ini dengan
memrogram sendiri.
Hasil
dari operasi ini adalah array yang
berisi nilai yang sama dari kedua himpunan yang diiriskan.
Fungsi
untuk melakukan irisan dua himpunan dalam PHP adalah array_intersect(). Berikut
merupakan script untuk membuat Array_Intersect.php :
<html>
<head>
<title>Array
: Intersect</title>
</head>
<body>
<h1>Array
: Intersect</h1>
<?php
$ar_a=array(1,2,5,7,8);
print("Isi
Array \$ar_a <br>");
print_r($ar_a);
print("<br>");
$ar_b=array("abc",5,7,90);
print("Isi
Array \$ar_b<br>");
print_r($ar_b);
print("<br>");
$irisan=array_intersect($ar_a,
$ar_b);
print("Isi
Array \$irisan <br>");
print_r($irisan);
print("<br>");
?>
</body>
</html>
Tampilan hasil eksekusi : Array_Intersect.php
Contoh diatas memperlihatkan isi dari
$irisan adalah 5 dan 7 yag berasal dari elemen $ar_a nomor 2 dan nomor 3.
3.
Selisih
Operasi elisih dalam suatu himpunan adalah untuk mendapatkan
isi satu himpunan yang tidak dimiliki oleh himpunan lain yang di selisihkan
kepada himpunan pertama, atau secara sederhana adalah mengurangi isi himpunan
pertama dengan isi himpunan kedua sehingga isi himpunan pertama tidak ada yang
sama dengan isi himpunan kedua, semua isi himpunan yang sama dengan himpunan
kedua di buang.
Fungsi
untuk melakukan operasi selisih ini adalah dengan Array_diff()
<html>
<head>
<title>Array
: Diff</title>
</head>
<body>
<h1>Array
: Diff</h1>
<?php
$ar_a=array(1,2,5,7,8);
print("Isi
Array \$ar_a <br>");
print_r($ar_a);
print("<br>");
$ar_b=array("abc",5,7,90);
print("Isi
Array \$ar_b<br>");
print_r($ar_b);
print("<br>");
$diff=array_diff($ar_a,
$ar_b);
print("Isi
Array \$diff <br>");
print_r($diff);
print("<br>");
?>
</body>
</html>
Tampilan hasil eksekusi Array_Diff.php
Array_diff()
menghasilkan isi $ar_a yang elemenya tidak terdapat juga dalam Array $ar_b.