PERTEMUAN 5
Pokok Bahasan :
Array
1. Pengantar Array
Array merupakan tipe data terstruktur yang berguna untuk menyimpan sejumlah data
yang bertipe sama. Bagian yang menyusun array disebut elemen array, yang masing-masing
elemen dapat diakses tersendiri melalui index array. Index array dapat berupa bilangan
integer atau string.
Sebagai contoh, kita ingin menyimpan data buah-buahan kita dalam sebuah variabel
$Buah. Ada empat buah yang akan kita masukkan dalam variabel tersebut. Secara visual,
variabel $Buah dapat kita gambarkan sebagai berikut:
Melon Alpukat Durian Apel
$Buah
Setiap nilai dalam elemen variabel $Buah diatas dapat diakses/dipanggil
menggunakan index. Di dalam penggunaannya, PHP terdapat dua macam index yaitu:
1. Index Numerik yaitu menggunakan angka untuk menandai sebuah elemen array.
2. Index Asosiatif yaitu memberikan nama sebagai penanda sebuah elemen.
Penggunaan index secara detail akan dibahas dibawah.
Hal yang sama juga dapat dilakukan dengan cara sebagai berikut :
$Buah[] = "Melon";
$Buah[] = "Alpukat";
$Buah[] = "Durian";
$Buah[] = "Apel";
Berbeda dengan inisialiasi dengan cara diatas dimana index didefinisikan secara
otomatis oleh program. Cara inisialiasi dibawah ini memungkinkan kita untuk
mendefinisikan index secara manual.
$Buah[0] = "Melon";
$Buah[1] = "Alpukat";
$Buah[2] = "Durian";
$Buah[3] = "Apel";
Hasil dari inisialisasi array dengan index numeric diatas, maka array $Buah
dapat digambarkan sebagai berikut:
Value Melon Alpukat Durian Apel
Index 0 1 2 3
Dalam PHP, untuk menampilkan semua index dan value (mencetak isi array) yang
telah didefinisikan dalam sebuah array, digunakan fungsi print_r( ). Untuk lebih jelasnya,
lihat contoh dibawah ini.
File : lat01.php
Deskripsi : Program mencetak struktur array dengan index numerik
<?php
echo "<pre>";
print_r($Buah);
echo "</pre>";
?>
Output :
Inisialiasi dengan cara diatas juga dapat dilakukan dengan cara sebagai berikut :
$Nilai['Nia'] = 80;
$Nilai['Fitra'] = 90;
$Nilai['Nova'] = 75;
$Nilai['Reza'] = 85;
Hasil dari inisialiasi array dengan index asosiatif diatas, maka array $Nilai dapat
digambarkan sebagai berikut:
Value 80 90 75 85
Index Nia Fitra Nova Reza
Sama halnya dengan baris kode pada array dengan index numeric, fungsi print_r( )
juga digunakan untuk menampilkan semua elemen dan value yang telah didefinisikan dalam
array dengan index asosiatif.
File : lat02.php
Deskripsi : Program mencetak struktur array dengan index asosiatif.
<?php
$Nilai['Nia'] = 80;
$Nilai['Fitra'] = 90;
$Nilai['Nova'] = 75;
$Nilai['Reza'] = 85;
echo "<pre>";
print_r($Nilai);
echo "</pre>";
?>
Output :
File : lat03.php
Deskripsi : Program pengaksesan array secara langsung dengan index numerik
<?php
$Warna[] = "Hijau";
$Warna[] = "Biru";
$Warna[] = "Merah";
$Warna[] = "Kuning";
echo "<br>";
echo $Warna[0];
echo "<br>";
echo $Warna[2];
?>
File : lat04.php
Deskripsi : Program menampilkan seluruh isi array melalui perulangan dengan index
numerik.
<?php
?>
Penjelasan :
Pada contoh program diatas, index dapat digantikan oleh variabel counter $i. Fungsi
count( ) digunakan untuk menghitung jumlah elemen yang terdapat pada array $arrWarna
yang nantinya digunakan sebagai stop condition dari perulangan.
File : lat05.php
Deskripsi : Program menampilkan seluruh isi array dengan index numerik pada tabel
<?php
?>
File : lat06.php
Deskripsi : Program mendeklarasikan array secara langsung dengan index asosiatif.
<?php
$Nilai = array ("Nia" => 80, "Fitra" => 90, "Nova" => 75,
"Reza" => 85);
echo $Nilai['Reza'];
echo "<br>";
echo $Nilai['Nia'];
$Nilai['Rinda'] = 80;
$Nilai['Hafifah'] = 95;
$Nilai['Rizal'] = 77;
echo "<br>";
echo $Nilai['Rizal'];
echo "<br>";
echo $Nilai['Rinda'];
?>
File : lat07.php
Deskripsi : Program menampilkan seluruh isi array melalui perulangan dengan index
assosiatif.
<?php
reset ($arrNilai);
?>
Penjelasan :
Untuk menampilkan array assosiatif bisa menggunakan perulangan foreach dan while
dengan fungsi list( ) dan each(). Pada contoh program diatas, perulangan menggunakan
foreach secara otomatis akan menampilkan semua value pada array tanpa harus
menyebutkan index asosiatifnya. Baris ke-5 dari lat07.php di atas bisa dinyatakan dengan
pernyataan “untuk setiap elemen array $arrNilai, masukkan key/index-nya ke variabel
$nama dan masukkan value-nya ke variabel $nilai”. Pada baris ke-8 terdapat fungsi reset( )
yang berfungsi mengembalikan pointer array ke elemen pertama. Pada baris ke-10, array
assosiatif ditampilkan dengan struktur while yang menggunakan fungsi list( ) dan each( ).
File : lat08.php
Deskripsi : Program menampilkan seluruh isi array dengan index asosiatif pada tabel
<?php
?>
<table border="1" width="300">
<tr>
<th>No</th>
<th>Riders</th>
</tr>
<?php
foreach ($riders as $no => $name) {
?>
<tr>
<td><?php echo $no; ?></td>
<td><?php echo $name; ?></td>
</tr>
<?php } ?>
</table>
File : lat09.php
Deskripsi : Program mengurutkan array dengan sort() dan rsort().
<?php
$arrNilai = array ("Nia" => 80, "Fitra" => 90,
"Nova" => 75, "Reza" => 85);
echo "<b>Array sebelum pengurutan</b>";
echo "<pre>";
print_r($arrNilai);
echo "</pre>";
sort($arrNilai);
reset($arrNilai);
echo "<b>Array setelah pengurutan dengan sort()</b>";
echo "<pre>";
print_r($arrNilai);
echo "</pre>";
rsort($arrNilai);
reset($arrNilai);
echo "<b>Array setelah pengurutan dengan rsort()</b>";
echo "<pre>";
print_r($arrNilai);
echo "</pre>";
?>
File : lat10.php
Deskripsi : Program mengurutkan array dengan asort() dan arsort().
<?php
$arrNilai = array ("Nia" => 80, "Fitra" => 90,
"Nova" => 75, "Reza" => 85);
echo "<b>Array sebelum pengurutan</b>";
echo "<pre>";
print_r($arrNilai);
echo "</pre>";
asort($arrNilai);
reset($arrNilai);
echo "<b>Array setelah pengurutan dengan asort()</b>";
echo "<pre>";
print_r($arrNilai);
echo "</pre>";
arsort($arrNilai);
reset($arrNilai);
echo "<b>Array setelah pengurutan dengan arsort()</b>";
echo "<pre>";
print_r($arrNilai);
echo "</pre>";
?>
File : lat11.php
Deskripsi : Program mengurutkan array dengan ksort() dan krsort().
<?php
$arrNilai = array ("Nia" => 80, "Fitra" => 90,
"Nova" => 75, "Reza" => 85);
echo "<b>Array sebelum pengurutan</b>";
echo "<pre>";
print_r($arrNilai);
echo "</pre>";
ksort($arrNilai);
reset($arrNilai);
echo "<b>Array setelah pengurutan dengan ksort()</b>";
echo "<pre>";
print_r($arrNilai);
echo "</pre>";
krsort($arrNilai);
reset($arrNilai);
echo "<b>Array setelah pengurutan dengan krsort()</b>";
echo "<pre>";
print_r($arrNilai);
echo "</pre>";
?>
File : lat12.php
Deskripsi : Program mengatur posisi pointer dalam array.
<?php
$transport = array('foot', 'bike', 'car', 'plane');
echo "<pre>";
print_r ($transport);
echo "</pre>";
$mode = current($transport);
echo $mode."<br>";
$mode = next($transport);
echo $mode."<br>";
$mode = current($transport);
echo $mode."<br>";
$mode = prev($transport);
echo $mode."<br>";
$mode = end($transport);
echo $mode."<br>";
$mode = current($transport);
echo $mode."<br>";
?>
File : lat13.php
Deskripsi : Program mencari elemen array.
<?php
$arrBuah = array ("Mangga", "Apel", "Pisang",
"Kedondong", "Jeruk");
if (in_array ("Kedondong", $arrBuah)) {
echo "Ada buah Kedondong di sini";
} else {
echo "Tidak ada buah Kedondong di sini";
}
?>
Daftar Pustaka