0% menganggap dokumen ini bermanfaat (0 suara)
6 tayangan14 halaman

Praktikum 9 Array

Diunggah oleh

hanujisudiman
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
6 tayangan14 halaman

Praktikum 9 Array

Diunggah oleh

hanujisudiman
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 14

PRAKTIKUM 9

ARRAY
1. Array

Array adalah wadah yang dapat menyimpan sejumlah nilai skalar. Setiap nilai di array
diakses melalui indeks yang juga biasa disebut kunci. Umumnya indeks berupa bilangan
bulat yang dimulai dengan nol. Namun, indeks berupa string dimungkinkan di PHP.
Pembentukan array

$nama

Dian Edi Citra Simon Hardi

$nama[4]
$nama[3]
$nama[2]
$nama[1]
$nama[0]

Array di atas mengandung 5 elemen. Setiap elemen diakses dengan menggunakan indeks
yang dimulai dengan nol.
Array di PHP diimplementasikan melalui konstruk bernama array. Bentuk penciptaan dan
sekaligus mengisikan elemen-elemen array dapat dilakukan dengan bentuk berikut:
nama_array = array(elemen_1, ..., elemen_N);

Contoh berikut memberikan gambaran tentang pembentukan array dan cara


memberikan nilai ke array.
<?php
$nama = array("Dian", "Edi", "Citra", "Simon", Hardi");
print_r($nama);
?>

Output yang dihasilkan:


Array juga bisa didefinisikan dengan cara semacam berikut:
$nama_array[] = “elemen_1”;
$nama_array[] = “elemen_2”;
$nama_array[] = “elemen_N”;

Contoh pendefinisian array di atas dalam program adalah sebagai berikut:


<?php

$nama[] = “Dian”;

$nama[] = “Edi”;

$nama[]= “Citra”;

$nama[] = “Simon”;

$nama[] = “Hardi”;

print_r($nama);

?>

Output dari program di atas adalah:

Selanjutnya bagaimana cara menampilkan nilai-nilai yang tersimpan dalam ruang array,
caranya dengan memanggil indeks yang terdapat di dalam array. Perhatikan program
berikut:

<?
$nama = array("Dian", "Edi", "Citra", "Simon", "Hardi");
//menampilkan nilai pada indeks ke-0 yaitu Dian
print($nama[0]) . "\t";
//menampilkan nilai pada indeks ke-2 yaitu Citra
print($nama[2]) . "\t";
//mengubah nilai pada indeks ke-4
$nama[4] = "Diana";
//menampilkan nilai pada indeks ke-4 yang telah diubah
print($nama[4]);
?>

Output yang dihasilkan dari program di atas adalah sebagai berikut:


Kita juga bisa menampilkan semua nilai array sekaligus secara berturut-turut
menggunakan pengulangan seperti for atau menggunakan fungsi count(). Perhatikan
program berikut.

<?php
//menampilkan semua nilai array menggunakan for
$buah = array("Jeruk", "Melon", "Apel", "Mangga", "Manggis", "Nangka");
for ($i = 0; $i <= 5; $i++)
{
echo "Nilai indeks ke ".$i. " dari array = ".$buah[$i]. "<br>";
}

print("<hr>");
//menampilkan semua nilai array menggunakan count()
$buah = array("Jeruk", "Melon", "Apel", "Mangga", "Manggis", "Nangka");
for ($i = 0; $i < count($buah); $i++)
{
echo "Nilai indeks ke ".$i. " dari array = ".$buah[$i]. "<br />";
}
?>

Perhatikan output yang dihasilkan oleh kedua fungsi for dan count() di atas.
Array Asosiatif
Dari contoh-contoh di atas, kita lihat bahwa ruang dari array diberikan nomor ruang
sebagai penanda, yaitu mulai dari 0, 1, 2, dst. Apakah penanda setiap ruang ini harus
berupa angka? Jawabnya tidak, kita juga bisa memberi penanda setiap ruang dengan
suatu kata atau karakter. Array yang demikian ini disebut array asosiatif. Berikut ini
contoh membuat array asosiatif dan cara menampilkan nilai pada suatu ruangnya.

<?php
$nilai = array("indeks1" => 10, "indeks2" => 20, "indeks3" => 30,
"indeks4" => "40");
echo $nilai['indeks2'] ."<br>";
echo $nilai['indeks4'];
?>

Output yang dihasilkan adalah sebagai berikut:

Foreach
Perulangan foreach banyak digunakan bersamaan dengan data array, karena mengakses
data array akan jauh lebih mudah dan praktis.
Struktur foreach adalah sebagai berikut:
foreach(array_expression as $value) statement
foreach(array_expression as $key => $value) statement

Untuk lebih jelasnya, perhatikan contoh berikut:


• Foreach yang hanya menampilkan value
<?php
$a = array (1, 2, 3, 17);
foreach ($a as $v)
{
echo "Nilai \$a saat ini adalah: $v.<br>";
}
?>
• Foreach yang menampilkan value dengan key
<?php
$a = array (1, 2, 3, 17);
$i = 0;
foreach($a as $v)
{
echo "\$a[$i] => $v.<br>";
$i++;
}
?>

• Foreach pada array asosiatif


<?php
$a = array ("one" => 1, "two" => 2, "three" => 3, "four" => 17);
foreach($a as $k => $v)
{
echo "\$a[$k] => $v.<br>";
}
?>
Array Multi Dimensi
Array berdimensi lebih dari satu dapat dibentuk dengan membuat dua buah array dan
salah satu array diberikan sebagai elemen dari array yang lain. Contoh:
<?php
$kendaraan['Roda Dua']['Motor'] = "Honda";
$kendaraan['Roda Dua']['Sepeda'] = "Fixie";
$kendaraan['Roda Empat']['Mobil'] = "Toyota";
echo $kendaraan['Roda Dua']['Motor'];
?>

Output:

Contoh yang kedua:


<?php
$makanan = array(
"sayuran"=>array("bayam"=>8000,"tomat"=>5000),
"buah"=>array("apel"=>17000,"jeruk"=>8000));

echo "Harga Buah Apel Satu Kg : Rp" .$makanan['buah']['apel'];


?>

Output:

Banyak cara untuk mendeklarasikan array multi dimensi ini, tergantung kita saja ingin
memakai yang mana. Gunakan yang menurut kita mudah saja. Tapi kebanyakan orang
lebih suka menggunakan contoh pertama dalam menggunakan array multi dimensi
karena mudah dipahami struktur kode nya.

Mengurutkan array
Pengurutan data di array berindeks bilangan bisa menggunakan sort() dan rsort().
• sort() untuk mengurutkan data secara urut naik (ascending)
• rsort() untuk mengurutkan data secara urut turun (descending)
Perhatikan contoh program berikut.
<?
$nama = array("Dian", "Edi", "Citra", "Simon", "Hardi");
print("Data asli: <br>");
foreach($nama as $kunci => $isi)
print(($kunci + 1) . "." . $isi . "<br>");

print("<hr>");

sort($nama);
print("Hasil sort(): <br>");
foreach($nama as $kunci => $isi)
print(($kunci +1) . "." . $isi . "<br>");

print("<hr>");

rsort($nama);
print("Hasil rsort(): <br>");
foreach($nama as $kunci => $isi)
print(($kunci +1) . "." . $isi . "<br>");
?>
Pengurutan data di array asosiatif
Untuk mengurutkan data di array asosiatif, kita bisa menggunakan asort() dan
arsort().
• asort() untuk mengurutkan data secara urut naik (ascending);

• arsort() untuk mengurutkan data secara urut turun (descending);

Perhatikan contoh berikut:

<?
$kamus["kuda"] = "horse";
$kamus["burung"] = "bird";
$kamus["unta"] = "camel";
$kamus["ular"] = "snake";
$kamus["kura-kura"] = "turtle";
$kamus["katak"] = "frog";

print("Data asli: <br>");


foreach($kamus as $kunci => $isi)
print($kunci . "=>" . $isi . "<br>");

print("<hr>");

asort($kamus);
print("Hasil asort() : <br>");
foreach($kamus as $kunci => $isi)
print($kunci . "=>" . $isi . "<br>");

print("<hr>");

arsort($kamus);
print("Hasil asort() : <br>");
foreach($kamus as $kunci => $isi)
print($kunci . "=>" . $isi . "<br>");

?>
Pengurutan data secara alamiah dapat menggunakan natsort(). Contoh:
<?
$data[] = "12 apel";
$data[] = "1 apel";
$data[] = "2 apel";
$data[] = "24 apel";
$data[] = "3 apel";

print("Data asli:<br>");
foreach($data as $kunci => $isi)
print($kunci . "=>" . $isi . "<br>");

print("<hr>");

sort($data);
print("Hasil sort() : <br>");
foreach($data as $kunci => $isi)
print($kunci . "=>" . $isi . "<br>");

print("<hr>");

natsort($data);
print("Hasil natsort() : <br>");
foreach($data as $kunci => $isi)
print($kunci . "=>" . $isi . "<br>");
?>
Output yang dihasilkan:

Mengolah array

Dalam pengolahan array ada beberapa fungsi yang digunakan, misalnya kita akan
menambahkan elemen ke array kita bisa menggunakan fungsi array_unshift() dan
array_push().

• array_unshift() berguna untuk menambahkan data di awal array

• array_push() berguna untuk menambahkan data diakhir array

Perhatikan contoh berikut:

<?
$a = array("Satu", "Dua", "Tiga");

print("Isi \$a semula: <br>");


print_r($a);
print("<br>");

array_unshift($a, "Nol");
print("Isi \$a setelah array_unshift(): <br>");
print_r($a);
print("<hr>");

array_push($a, "Empat", "Lima");


print("Isi \$a setelah array_push(): <br>");
print_r($a);
?>

Output:

Apabila fungsi di atas berfungsi untuk menambahkan elemen pada array maka fungsi
array_shift() dan array_pop() berguna untuk membuang elemen pada array.

• array_shift() berguna untuk membuang elemen di awal array

• array_pop() berguna untuk membuang elemen di akhir array

Perhatikan contoh berikut:

<?
$a = array("Satu", "Dua", "Tiga");

print("Isi \$a semula: <br>");


print_r($a);
print("<br>");

$elemen = array_shift($a);
print("Isi \$a setelah array_shift()");
print_r($a);
print("<br>");

print("<hr>");

$elemen = array_pop($a);
print("Isi \$a setelah array_pop()");
print_r($a);
print("<br>");
?>
Perhatikan output yang dihasilkan.

Untuk menyalin elemen-elemen array, kita bisa menggunakan fungsi array_slice().


Bentuk pemakaian fungsi ini adalah sebagai berikut:

array_slice(array, indeks_awal [,cacah])

Perhatikan contoh:

<?
$a = array("merah", "jingga", "kuning", "hijau", "biru", "nila",
"ungu");
print("Isi \$a semula: <br>");
print_r($a);
print("<br>");
print("<hr>");
$b=array_slice($a, 2, 3);
print("Isi \$a setelah array_slice(\$a, 2, 3) : <br>");
print_r($b);
print("<br>");
?>

Output yang dihasilkan:


Dalam array terdapat fungsi yang berguna untuk menggabungkan array. Yaitu
menggunakan fungsi array_merge(). Bentuk pemakaian sebagai berikut:

array_merge(array1, array2, ...)

Nilai balik berupa gabungan array yang menjadi argumennya.

Contoh:

<?
$selular = array("Samsung", "Nokia", "Apple");
$operator = array("Indosat", "Telkomsel");
print_r($selular);
print("<br>");
print_r($operator);
print("<br>");
$gabungan = array_merge($selular, $operator);
print_r($gabungan);

print("<br>");
?>
Output:

Berikut adalah daftar beberapa fungsi yang belum disebutkan di atas yang berguna untuk
mengolah array yang dapat kita praktikkan sesuai dengan kebutuhan pengolahan array.

Fungsi Bentuk Umum Kegunaan


array_reverse array_reverse(array) Membalik urutan di array
suffle() suffle(array) Mengacak isi array
array_rand() array_rand(array, cacah) Mengambil elemen secara
random
array_unique() array_unique(array) Membuat elemen pada
array tidak sama
range() range(nilai_awal, nilai_akhir) Memberikan nilai urut pada
array
in_array() in_array(elemen_yang_dicari, array) Mencari keberadaan suatu
elemen pada array
array_key_exist() array_key_exist(kunci, array) Mencari keberadaan suatu
kunci pada aray
explode() explode(pemisah, string, [,batasan]) Mengonversi string menjadi
array
implode() implode(perekat, array) Mengonversi array menjadi
string
array_diff() array_diff(array1, array2) Mencari perbedaan dua
array
array_intersect() array_intersect(array1, array2) Mencari persamaan dua
array

Anda mungkin juga menyukai