Struktur Kontrol di PHP
27 March 2013
Penggunaan Function di PHP
18 April 2013

Pengunaan Array di PHP

Pengertian Array

Array adalah satu rangkaian elemen (variable) bertipa sama yang menempati memori secara teratur yang dapat diakses secara individu dengan menambahkan suatu index (subscript) kepada suatu nama unik .

Array disebut juga larik.

Memuat dan Mengakses Array

 

Untuk mebuat/menciptakan suatu array digunakan fungsi array().

<html>
<head>
<title>Rasid</title>
</head>
<body>
<?php

// Menciptakan array Cara 1
$warna = array (“Merah”,”Kuning”,”Hijau”);

// Assigment array Cara 2
// $warna[0] = “Merah”;
// $warna[1] = “Kuning”;
// $warna[2] = “Hijau”;

// Assigment array Cara 3
// $warna[] = “Merah”;
// $warna[] = “Kuning”;
// $warna[] = “Hijau”;

// Mengakses array
echo (“<h3> Elemen Array </h3> “);
echo (“\$warna[0] = $warna[0] <br>”);
echo (“\$warna[1] = $warna[1] <br>”);
echo (“\$warna[2] = $warna[2] <br>”);
?>
</body>
</html>

 

 

Array Asosiatif

Array secara umum  mengacu pada elemennya dengan suatu nomor index, tetapi PHP menijinkan indexnya berupa string.

<html><head><title>Rasid</title></head><body><?php
// Assigment array Cara 1$kode[“Jogja”] = “0274”;$kode[“Jakarta”] = “021”;$kode[“Medan”] = “061”;
// Assigment array Cara 2// $kode = array (“Jogja” => “0274” , “Jakarta” => “021” , “Medan” => “061”);

// Mengakses arrayprint (“<h3> Elemen Array </h3> “);printf (“Kode Jogja = %s  <br>”, $kode[“Jogja”]);printf (“Kode Jakarta = %s  <br>”, $kode[“Jakarta”]);printf (“Kode Medan = %s  <br>”, $kode[“Medan”]);?> </body></html>

 

Array dengan Indek Campuran

Array dengan index campuran yang dimaksud disini adalah array dengan index berupa bilangan integer positif dan string.

Demikian juga dengan tipe data darielemen yang disimpan dalam array.

<html>
<head>
<title>Campuran</title>
</head>
<body>
<?php

 

// Assigment array
$Barang[0] = “Komputer”;
$Barang[‘Harga’] = 6500000;
$Barang[‘Jumlah’] = “5 Unit”;
$Barang[‘Diskon’] = 0.15;

// Mengakses array
print (“<h3> Elemen Array </h3> “);
printf (“\$Barang[0] = %s <br>”, $Barang[0]);
printf (“\$Barang[‘Harga’] = %s <br>”, $Barang[‘Harga’]);
printf (“\$Barang[‘Jumlah’] = %s <br>”, $Barang[‘Jumlah’]);
printf (“\$Barang[‘Diskon] = %s <br>”, $Barang[‘Diskon’]);

?>
</body>
</html>

 

 

Penggabungan Array

Penggabungan array proses menggabungkan dua buah array menjadi satu buah array menggunakan fungsi array_union() atau array_merge().

Catatan: fungsi count() dan sizeof() digunakan untuk mengetahui banyaknyaelemen array.

<html>
<head>
<title>Gabung</title>
</head>
<body>
<?php

 

// Assigment array
$Kota[0] = “Jogja”;
$Kota[1] = “Jakarta”;
$Kota[2] = “Jambi”;

$Hari[0] = “Senin”;
$Hari[1] = “Selasa”;
$Hari[2] = “Rabu”;
$Hari[3] = “Kamis”;

$Gabung = array_merge($Kota, $Hari);
$JmlElemenKota = count($Kota);
$JmlElemenHari = sizeof($Hari);
$JmlElemenGabung = sizeof($Gabung);

print (“<b> Elemen Array Kota <br></b>”);
print_r ($Kota);
print (“<br>”);

print (“<b> Elemen Array Hari <br></b>”);
print_r ($Hari);
print (“<br>”);

print (“<b> Elemen Array Gabung <br></b>”);
print_r ($Gabung);
print (“<br>”);

printf (“Jumlah elemen Kota = %d <br>”, $JmlElemenKota);
printf (“Jumlah elemen Hari = %d <br>”, $JmlElemenHari);
printf (“Jumlah elemen Gabung = %d <br>”, $JmlElemenGabung);

?>
</body>
</html>

 

 

Fungsi pengurutan dalam array

    Fungsi Keterangan
arsort(array) Mengurutkan elemen array secara menurun (descending)
asort(array) Mengurutkan elemen array secara menaik (acending)
 krsort(array) Mengurutkan index array secara menurun (descending)
Ksort(array) Mengurutkan index array secara menaik (acending)
natsort(array) Mengurutkan elemen array secara urutan alamiah.
 natcasesort(array) Mengurutkan elemen array secara urutan alamiah. Yang bersifat sensitive  case.
rsort(array) Mengurutkan elemen array secara menurun dan tidak mempertahankan indexnya.
sort(array) Mengurutkan elemen array secara menaik dan tidak mempertahankan indexnya.

 

<html>
<head><title>Urut</title></head>
<body>
<?php
// Assigment array
$Kota[0] = “Jakarta”;
$Kota[1] = “Bandung”;
$Kota[2] = “Surabaya”;
$Kota[3] = “Pontianak”;
$Kota[4] = “Yogyakarta”;
$Kota[5] = “Medan”;

//Mengakses Array
print (“<b> Elemen Awal Array <br></b>”);
print_r ($Kota);
print (“<br>”);

$Kotaku =$Kota ;
arsort($Kotaku);
print (“<b> Setelah <u>artsort</u> : <br></b>”);
print_r ($Kotaku);
print (“<br>”);

$Kotaku =$Kota ;
asort($Kotaku);
print (“<b> Setelah <u>asort</u> : <br></b>”);
print_r ($Kotaku);
print (“<br>”);

$Kotaku =$Kota ;
krsort($Kotaku);
print (“<b> Setelah <u>krsort</u> : <br></b>”);
print_r ($Kotaku);
print (“<br>”);

$Kotaku =$Kota ;
ksort($Kotaku);
print (“<b> Setelah <u>ksort</u> : <br></b>”);
print_r ($Kotaku);
print (“<br>”);

$Kotaku =$Kota ;
natsort($Kotaku);
print (“<b> Setelah <u>natsort</u> : <br></b>”);
print_r ($Kotaku);
print (“<br>”);

$Kotaku =$Kota ;
natcasesort($Kotaku);
print (“<b> Setelah <u>natcasesort</u> : <br></b>”);
print_r ($Kotaku);
print (“<br>”);

$Kotaku =$Kota ;
rsort($Kotaku);
print (“<b> Setelah <u>rsort</u> : <br></b>”);
print_r ($Kotaku);
print (“<br>”);

$Kotaku =$Kota ;
sort($Kotaku);
print (“<b> Setelah <u>sort</u> : <br></b>”);
print_r ($Kotaku);
print (“<br>”);

?>
</body>
</html>

Contoh 2

<html>
<head>
<title>Urut</title>
</head>
<body>
<?php

// Assigment array
$gambar[0] = “Gambar1a”;
$gambar[1] = “Gambar20”;
$gambar[2] = “Gambar1B”;
$gambar[3] = “Gambar35”;
$gambar[4] = “Gambar3”;

//Mengakses Array
print (“<b> Elemen Array Awal<br></b>”);
while (list($indeks, $nilai) = each($gambar))
{
print (“$nilai <br>”);
}

$gambarku = $gambar;
natsort($gambarku);
print (“<b> Setelah <u> natsort</u> </b> <br>”);
while (list($indeks, $nilai) = each($gambarku))
{
print (“$nilai <br>”);
}

$gambarku = $gambar;
natcasesort($gambarku);
print (“<b> Setelah <u> natcasort</u> </b> <br>”);
while (list($indeks, $nilai) = each($gambarku))
{
print (“$nilai <br>”);
}
$gambarku = $gambar;
rsort($gambarku);
print (“<b> Setelah <u> rsort</u> </b> <br>”);
while (list($indeks, $nilai) = each($gambarku))
{
print (“$nilai <br>”);
}
$gambarku = $gambar;
sort($gambarku);
print (“<b> Setelah <u> sort</u> </b> <br>”);
while (list($indeks, $nilai) = each($gambarku))
{
print (“$nilai <br>”);
}

?>

 

</body> </html>

 

Fungsi POP,PUSH, SHIFT

Fungsi pop, push, dan shift dapat diperlakukan pada array layaknya opreasi seperti pada stack (tumpukan).

Fungsi Keterangan
 array_pop(array) Menghapus elemen terakhir suatu array.
 array_push(array, data1,…) Menambah satu atau beberapa elemen diakhir dari array sama , dengan perintah : $arra[]=$var
 array_shift(array) Menghapus elemen pertama dari suatu array
 array_unshift(array, data1, …) Menambah satu  atau beberapa elemen diawalsuatu array.

<html>
<head>
<title>String</title>
</head>
<body>
<?php
// Assigment array
$buah[0] = “Jeruk”;
$buah[1] = “Apel”;
$buah[2] = “Pisang”;
//Mengakses Array
print (“<b> Elemen Array Awal </b><br>”);
while (list($indeks, $nilai) = each($buah))
{
print (“$nilai <br>”);
}
$buahku = $buah;
array_pop($buahku);
print (“<b> Setelah <u> array_pop</u> </b> <br>”);
while (list($indeks, $nilai) = each($buahku))
{
print (“$nilai <br>”);
}
$buahku = $buah;
array_push($buahku,”Durian”);
print (“<b> Setelah <u> array_push</u> </b> <br>”);
while (list($indeks, $nilai) = each($buahku))
{
print (“$nilai <br>”);
}
$buahku = $buah;
array_shift($buahku);
print (“<b> Setelah <u> array_shift</u> </b> <br>”);
while (list($indeks, $nilai) = each($buahku))
{
print (“$nilai <br>”);
}
$buahku = $buah;
array_unshift($buahku, “Mangga” , “Nanas”);
print (“<b> Setelah <u> array_unshift</u> </b> <br>”);
while (list($indeks, $nilai) = each($buahku))
{
print (“$nilai <br>”);
}
?>
</body>
</html>

 

 

Fungsi Array_rand

Fungsi array_rand digunakan untuk mengambil satu elemen atau lebih suatu array secara random.

Sintak:    array_rand(array[,jumlah])

Bila jumlah tidak ditentukan maka akan digunakan nilai default, yaitu 1.

Contoh

Fungsi srand() / fungsi matematika berguna sebgai generator yang menghasilkan bilangan yang benar benar random  microtime() perhitungan waktu dalam micro detik.

Hasil eksekusi berubah setiap kali dijalankan.

 

<html>
<head>
<title>Rand</title>
</head>
<body>
<?php

srand ((float) microtime() * 1000000);
$buku = array (“PHP”, “Java”, “C++”, “MySQL”, “Perl”);
$kunci = array_rand ($buku,2);
printf (“Elemen data : %s” . “<br>” , $buku[$kunci[0]]);
printf (“Elemen data : %s” . “<br>” , $buku[$kunci[1]]);

print (“Nomor Indeks : $kunci[0] <br> “);
print (“Nomor Indeks : $kunci[1] <br> “);

?>
</body>
</html>

 

Fungsi Shuffle

Fungsi shuffle bergunauntuk mengacak urutan elemen darisuatu array yang juga digunakan bersama sama  dengan fungsi srand().

Fungsi range() digunakan untuk membuat dan mengisi elemen array dengan range data yang ditentukan dapat berupa angka ataupunkarakter.

<html>
<head>
<title>Suffle</title>
</head>
<body>
<?php
$bilangan = range (“A” , “J”);
echo “Nilai awal <br>” ;
while (list($indeks, $data) = each ($bilangan))
{
echo “Indeks[$indeks] => $data <br> “;
}
echo “<br>”;
echo “<b> seteleh shuffle : </b> <br>”;
srand ((float) microtime() * 1000000);
shuffle ($bilangan);
while (list($indeks, $data) = each ($bilangan))
{
echo “Indeks[$indeks] => $data <br> “;
}
?>
</body>
</html>

 

 

Fungsi Pengurai dan Pengabung String

 

Fungsi pengurai string berguna untuk menguraikan/memisah suatu string menjadi beberapa sub-string yang menjadi elemen dalam array.

Fungsi penggabungan string berguna untuk menggabungkan elemen array menjadi string.

 

Fungsi Keterangan
 explode(pemisah, string[,batas]) Memisahkan string menjadi sub string  berdasarkan pemisah sebanyak batas (jika batas ditentukan nilainya) menjadi elemen array.
Implode(string_perakat, array)      atauJoin(string_perekat, array) Menggabungkan elemen suatu array menjadi suatu string dengan pemisah string_perekat
Split(pola_stirng, string[‘batas]) Memisahkan string menjadi substring dengan batasan batasan pemisah dibentuk oleh ekspresi reguler pola_string sebanyak batas (jika batas ditentukan nilainya) menjadi elemen array.
Preg_split(pola_string, string subjek[‘batas[,int flag]]) Memisah string menjadi sub string dengan batasan pemisah yang dibentuk oleh ekspresi reguler.

 

<html>
<head>
<title>PUSH</title>
</head>
<body>
<?php

$teks1 = “Pemrograman Web Dengan PHP”;
print (“Teks Asli : $teks1 <br>”);
$hasil = explode (” “,$teks1);
print (“<b> Setelah Explode :</b> <br>”);
print_r ($hasil);
print (“<br>”);

$gabung1 = implode (“-“, $hasil);
$gabung2 = join(“-“,$hasil);
print (“<b> Setelah Implode :</b> <br> “);
print_r ($gabung1);
print (“<br>”);

print (“<b> Setelah Join : </b> <br> “);
print_r ($gabung2);
print (“<br> <br> “);

$teks2 = “29.3.2012”;
$apisah1 = split(‘[/.-]’ , $teks2);
print (“Teks Asli : $teks2 <br>”);
print (“<b> Setelah split :</b> <br>”);
print_r ($apisah1);
print (“<br><br>”);

$teks3 = “PEMROGRAMAN PHP”;
$apisah2 = preg_split (‘//’ , $teks3, -1, PREG_SPLIT_NO_EMPTY);
$banyak = sizeof($apisah2);

print (“Teks asli : $teks3 <br>”);
print (“<b> Setelah preg_split : </b><br>”);
$i = 0 ;
while ($i <= $banyak )
{
print ($apisah2[$i].” “);
$i++;
}
?>
</body>
</html>

 

Array Multidimensi

Array satu dimensi sering disebut array dari bentuk vektor.

Array dua dimensi sering disebut array dari bentuk metrik.

Array tiga dimensi sering disebut array dari bentuk ruang.

<html>
<head>
<title>2 Dimensi</title>
</head>
<body>
<?php

$software = array(“Pemrograman”=>array (“PHP”,”C++”,”Java”),
“Database”=>array(“MySQL”,”SQLserver”,”Acces”),
“Aplikasi”=>array(“Ms Excel”,”Ms Word”));
while (list($indeks1, $plunak1)= each($software))
{
print “<u>$indeks1 :</u><br>”;
while(list($indeks2, $plunak2)= each($plunak1))
{
print (“$plunak2″.”<br>”);
}
print (“<br>”);
}
?>
</body>
</html>

 

 Pengulangan dengan foreach

   Pengulangan dengan foreach mempermudah pengulangan dalam array.

<html>
<head>
<title>Foreach</title>
</head>
<body>
<?php

$panjang = array(0, 10, 235);
echo “<u> Konversi CM ke Inchi </u><br>”;
foreach($panjang as $cm)
{
$inci = $cm / 2.54;
echo “$cm Centimeter = $inci Inchi.<br>”;
}

?>
</body>
</html>

 

 Pointer Internal Array

 

Setiap array mempuyai pointer internal yang berguna untuk menunjukan elemensekarang

Fungsi Keterangan
current(array)ataupos(array) Menghasilkan elemen sekarang dalam suatu array
 end(array) Meletakan pointer internalke elemen terakhir dari suatu array dan nilei elemennya.
 each(array) Menghasilkan pesangan index dan nilai elemen sekarang dan memajukan pointer internal ke elemen berikutnya.
 key(array) Menghasilkan key/index dari elemen yang sedang ditunjuk pointer internal pada array asosiatif.
 next(array) Meletakan pointer internal ke elemen berikutnya dan menghasilkan nilai elemen yang ditunjuk tesebut.
 prev(array) Meletakan pointer internal ke elemen sebelumnya dan menghasilkan nilai elemen yang ditunjuk tersebut.
 reset(array) Meletakan pointer internal ke elemen pertama dan menghasilkan nilai elemen tersebut.

<html>
<head>
<title>Pointer</title>
</head>
<body>
<?php
//Assigment array
$Hari[0] = “Senin”;
$Hari[1] = “Selasa”;
$Hari[2] = “Rabu”;
$Hari[3] = “Kamis”;
$Hari[4] = “Jumat”;
$Hari[5] = “Sabtu”;
$Hari[6] = “Minggu”;

$indeksnya = key($Hari);
$elemennya = current($Hari);
echo “Hasil setelah <b> current </b> <br>”;
echo “Indeks sekarang : $indeksnya <br>”;
echo “Elemennya sekarang : $elemennya <br>”;

$elemennya = end($Hari);
$indeksnya = key($Hari);
echo “Hasil setelah <b> end </b> <br>”;
echo “Indeks sekarang : $indeksnya <br>”;
echo “Elemennya sekarang : $elemennya <br>”;

$elemennya = prev($Hari);
$indeksnya = key($Hari);
echo “Hasil setelah <b> prev </b> <br>”;
echo “Indeks sekarang : $indeksnya <br>”;
echo “Elemennya sekarang : $elemennya <br>”;

$elemennya = reset($Hari);
$indeksnya = key($Hari);
echo “Hasil setelah <b> reset </b> <br>”;
echo “Indeks sekarang : $indeksnya <br>”;
echo “Elemennya sekarang : $elemennya <br>”;

$elemennya = next($Hari);
$indeksnya = key($Hari);
echo “Hasil setelah <b> next </b> <br>”;
echo “Indeks sekarang : $indeksnya <br>”;
echo “Elemennya sekarang : $elemennya <br>”; ?> </body> </html>

 

Array bersifat Unik

 

Adakalanya kita membutuhkan array bersifat unik , artinya array tanpa duplikasi elemen.

array_unique() berguna untuk menghilangkan duplikasi elemen array dan menghasikan array yang baru tanpa duplikasi elemen.

 

<html>
<head>
<title>Unik</title>
</head>
<body>
<?php

//Assigment array
$warna1 =array (“merah”,”hijau”,”kuning”,”merah”,”biru”,”kuning”);
$warna2 = array_unique($warna1);

echo”<b> Array awal</b> <br>”;
foreach ($warna1 as $urutan => $warna )
{
echo”$urutan = $warna <br>”;
}

echo “<br>”;
echo “<b>Setelah array_unique :</b> <br> “;
foreach ($warna2 as $urutan => $warna )
{
echo”$urutan = $warna <br>”;
}

?>
</body>
</html>

 

Irisan dan Selisih Array

Irisan untuk mengetahui elemen yang sama pada dua buah /lebih array. array_intersect untuk mengetahui elemen yang sama dari 2/lebih array yang diiriskan dengan array pertama.

Selesih digunakan mengetahui elemen yang berbeda dari 2/lebih array. array_diff untuk mengetahui elemen yang tidak sama dari 2/lebih array yang diselisihi dengan array pertama.

 

<html>
<head>
<title>Intersect</title>
</head>
<body>
<?php

$bil1 = array (1, 2, 3, 4, 5);
$bil2 = array (4, 5, 6, 7, 8);
$bil3 = array_intersect ($bil1, $bil2);
$bil4 = array_diff ($bil1, $bil2);

echo “<b> Array pertama awal </b> <br>”;
print_r ($bil1);
echo “<br>”;

echo “<b> Array kedua awal </b> <br>”;
print_r ($bil2);
echo “<br>”;

echo “<b> Array hasil IRISAN </b> <br>”;
print_r ($bil3);
echo “<br>”;

echo “<b> Array hasil SELISIH </b> <br>”;
print_r ($bil4);
echo “<br>”;
?>
</body>
</html>

 Membalikan Urutan Elemen Array

 

Fungsi array_reverse() akan menghasikan array yang baru dengan urutan terbalik termasuk indexnya, jika kondisi bool-nya TRUE.

Sintak:

array_reverse(array [‘bool preserve_keys])

<html>
<head>
<title>Balik</title>
</head>
<body>
<?php

$Kota[0] = “Jogya”;
$Kota[1] = “Bandung”;
$Kota[2] = “Surabaya”;
$Kota[3] = “Pontianak”;
$Kota[4] = “Jakarta”;
$Kota[5] = “Medan”;
$Kotaku = array_reverse($Kota,TRUE);
print “<b> Elemen awal : </b> “;
print_r ($Kota);
print “<br>”;

print “<b> Elemen setelah reverse : </b> “;
print_r ($Kotaku);
?>
</body>
</html>

Jumlah nilai elemen array

Untuk mengetahui nilai elemen array , dapat digunakan fungsi array_sum().

<html>
<head>
<title>SUM</title>
</head>
<body>
<?php

$bil1 = array(1, 2, 3, 4, 5);
$jumlah = array_sum($bil1);
echo “<b> Elemen Array : </b> <br> “;
print_r ($bil1);
print “<br>”;

echo “<b> Jumlah nilai elemen array : </b> <br> “;
print ($jumlah);

?>
</body>
</html>

 

 Mencari suatu nilai dalam array

Untuk mencari ada tidaknya suatu nilai elemen tertentu dalam array, dapat digunakan fungsi in_array() yang menghasilkan nilai TRUE apabila ditemukan dan FALSE apabila tidak ditemukan.

Sintak:

in_array (nilai_yang_dicari, array[,bool])

<html>
<head>
<title>Cari</title>
</head>
<body>
<?php

$prima = array (3,5, 7, 11, 13, 17, 19, 23, “Pensil” , “tipe-x” );
$cari = 17 ;
$hasil = in_array($cari, $prima);
print “<b> Isi Array </b><br> “;
foreach ($prima as $indeks=>$primaku)
{
print ” $indeks -> $primaku <br> “;
}
print “<br>”;
print “<b>Hasil pencarian </b> <br>”;
if ($hasil ==TRUE):
print (“$cari ADA ditemukan”);
else :
print (“$cari TIDAK ditemukan”);
endif;
print”<br>”;

// Dengan ? :
$cari2 = 20;
printf (“Apakah $cari2 ada di array : ? %s <br>”, in_array ($cari2, $prima) ? “Ya” : “Tidak”);

$cari3 = “Pensil”;
printf (“Apakah $cari3 ada di array : ? %s <br>”, in_array ($cari3, $prima,TRUE) ? “Ya” : “Tidak”);

?>
</body>
</html>

 

Muhammat Rasid Ridho
Muhammat Rasid Ridho
Software Developer yang Suka Jalan jalan, Belajar Jaringan dan Berbagi Cerita. Instagram: muhammat.rasid.ridho Jangan lupa tulis komentar di bawah ini ya teman teman ... !

Leave a Reply

Your email address will not be published.