Array Dalam PHP
Array Dalam PHP
Array digunakan untuk mengidentifikasi variabel yang memiliki jumlah data yang
lebih dari satu, tetap memiliki nama variabel yang sama.
Membuat dan Membaca Data Array
Ada beberapa cara yang bisa digunakan untuk membuat data array
dalam program PHP. Cara yang pertama adalah memasukkan nilai dari array itu secara
langsung seperti pada contoh berikut :
<?
$nama[0]="Doraemon";
$nama[1]="Nobita";
$nama[2]="Sizuka";
$nama[3]="Giant";
$nama[4]="Suneo";
echo "Nama nama tokoh dalam kartun doraemon adalah :<ul>";
for($i=0; $i<=4; $i++){
echo "<li>$nama[$i]</li>";
}
echo "</ul>";
?>
Cara yang kedua adalah menggunakan fungsi array() seperti berikut ini :
<?
$nama=array("Doraemon","Nobita","Sizuka","Giant","Suneo");
echo "Nama nama tokoh urutan pertama adalah $nama[0] dan urutan terakhir adalah
$nama[4]";
?>
Beberapa fungsi lain yang berkaitan dengan pembacaan data array adalah :
Fungsi
key()
Keterangan
Digunakan untuk mengetahui angka indeks pada posisi pointer
aktuf saat diakses.
current() Digunakan untuk mengetahui nilai array pada posisi pointer aktif.
next()
Digunakan untuk menaikkan pointer ke data array berikutnya.
prev()
Digunakan untuk kembali ke data array sebelumnya.
end()
Digunakan untuk meletakkan pointer pada posisi akhir array.
reset()
Digunakan untuk meletakkan pointer pada posisi awal array.
Menambah Isi Data Array
Untuk menambahkan isi dari sebuah data Array, digunakan fungsi array_push().
Penggunaan fungsi tersebut memungkinkan isi data array bisa disusun dengan susunan
baru.
Contoh dalam script :
<?
echo "<b>Menambahkan data pada Array</b><br>";
$nama=array("Doraemon","Nobita","Sizuka","Giant","Suneo");
echo "Urutan array yang asli \
$nama=array(\"Doraemon\",\"Nobita\",\"Sizuka\",\"Giant\",\"Suneo\");";
echo "Urutan array setelah ditambah";
array_push($nama,"Dekisugi","Doremi");
for($i=0; $i<=6; $i++){
echo "<br>$i : $nama[$i]";
}
?>
Data pada array dapat digabung dengan beberapa array sekaligus. Untuk
menggabung array, kita bisa menggunakan fungsi array_merge(). Berikut contohnya :
<?
$browser1=array("Firefox","Chrome","Opera");
$browser2=array("Safari","Flock","Internet Explorer");
$gabung_browser=array_merge($browser1,$browser2);
echo "Browser yang sering dipakai adalah :<ul>";
for($i=0; $i<=count($gabung_browser)-1; $i++) {
echo "<li>$gabung_browser[$i]</li>";
}
echo "</ul>";
?>
Hasilnya :
Sebagian isi dari sebuah array dapat dipotong atau diambil dengan menggunakan
fungsi array_slice(). Sedangkan untuk menggabungkan data array menjadi satu dapat
menggunakan fungsi array_merge(). Untuk format penulisannya adalah :
array_slice(variabel,offset,length)
variabel
Adalah variabel array yang datanya akan dipotong
Offset
Apabila parameter ini bernilai positif, maka pengambilan/pemotongan akan dimulai
dari awal elemen, namun apabila negatif maka pengambilan/pemotongan dimulai
diakhir elemen.
length
Apabila bernilai positif, maka yang diambil adalah jumlah dari elemen namun apabila
bernilai negatif, maka pemotongan diakhiri dengan sejumlah elemen akhir sebesar
parameter length. Namun apabila parameter length tidak dideklarasikan, maka
pemotongan akan diambil sampai dengan element yang terakhir.
<?
$data=array("a","b","c","d","e","f");
echo "\$data=array(\"a\",\"b\",\"c\",\"d\",\"e\",\"f\");";
$potongan_pertama=array_slice($data,4);
$potongan_kedua=array_slice($data,2,-1);
echo "<br>Hasil potongan yang pertama adalah : ";
for($a=0; $a<=count($potongan_pertama); $a++){
echo "$potongan_pertama[$a]";
}
echo "<br>Hasil potongan yang kedua adalah : ";
for($b=0; $b<=count($potongan_kedua); $b++){
echo "$potongan_kedua[$b]";
}
$gabung=array_merge($potongan_pertama,$potongan_kedua);
echo "<br>Hasil gabungan keduanya adalah : ";
for($c=0; $c<=count($gabung); $c++){
echo "$gabung[$c]";
}
?>
Kegunaan
Penambahan
Pengurangan
Perkalian
Pembagian
Sisa hasil bagi
Increament
Decreament
Contoh
$a+$b
$a-$b
$a*$b
$a/$b
$a%$b
$a++
$a--
Kegunaan
Dan
Dan
Atau
Atau
Eksklusif or
Not
Contoh
if($a==0 and $b==1)
if($a==0 && $b==1)
if($a==0 or $b==1)
if($a==0 || $b==1)
if($a==0 xor $b==1)
if(!empty($a))
Operator Perbandingan
Simb
Operator yang
Deskripsi
Contoh
ol
dilakukan
==
Sama dengan
True jika $a sama dengan $b
5==8
Kurang dari
True jika $a lebih kecil dari $b $a<$b
<
Lebih dari
True jika $a lebih besar dari $b $a>$b
>
Kurang dari sama
True jika $a lebih kecil atau
<=
$a<=$b
dengan
sama dengan $b
Lebih dari sama
True jika $a lebih besar atau
>=
$a>=$b
dengan
sama dengan $b
8
!=
$a!=$b
<?
$angka1 = 10;
$angka2 = 5;
echo "Hasil penjumlahan ".$angka1." dan ".$angka2." adalah ".
($angka1+$angka2)."<br>";
echo "Hasil dari ".$angka1." = ".$angka1." +2 adalah ".
($angka1+=2);
?>
b. IF ... ELSE
Perintah ini mirip dengan perintah IF diatas. Namun perintah IF ELSE ini dapat digunakan
untuk banyak blok perintah dan dengan kondisi yang berbeda beda.
Standar penulisannya adalah :
if(kondisi)
{
Pernyataan yang dijalankan bila kondisi1 bernilai benar;
}
else if
{
Pernyataan yang dijalankan bila kondisi2 bernilai benar;
}
else
{
pernyataan yang dijalankan bila kondisi1&2 bernilai salah;
}
<?
$umur = 35;
if ($umur
echo
} else if
echo
} else if
echo
} else {
echo
}
?>
> 50){
"Termasuk kategori TUA";
($umur > 25) {
"Termasuk kategori DEWASA";
($umur > 15) {
"Termasuk kategori REMAJA";
"Termasuk kategori ANAK ANAK";
c. Switch
10
Perintah switch ini digunakan sebagai alternatif untuk pengganti dari struktur if ... else
dimana terdapat else lebih dari satu. Dengan menggunakan perintah switch ini program dapat
semakin mudah untuk dibuat dan dipelajari. Untuk standar penulisannya adalah sebagai berikut :
switch (kondisi)
{
case konstanta1 : pernyataan1;
break;
case konstanta2 : pernyataan2;
break;
default : pernyataan default;
}
<?
$day = date("D");
switch ($day)
{
case 'sun' : $hari = "Minggu";
break;
case 'Mon' : $hari = "Senin";
break;
case 'Tue' : $hari = "Selasa";
break;
case 'Wed' : $hari = "Rabu";
break;
case 'Thu' : $hari = "Kamis";
break;
case 'Fri' : $hari = "Jumat";
break;
case 'Sat' : $hari = "Sabtu";
break;
default : $hari = "Kiamat";
}
echo "Hari ini adalah hari <b>$hari</b>";
?>
Pengulangan
Struktur pengulangan biasanya digunakan untuk mengulang suatu perintah. Dalam PHP
ada tiga macam pengulangan, yaitu :
a. FOR
11
For digunakan untuk mengulang suatu perintah dengan jumlah pengulangan yang telah
diketahui. Untuk penulisannya adalah :
for (nilai awal, nilai akhir, peningkatan/penurunan)
{
Pernyataan yang dijalankan;
}
<?
$awal = 1;
$akhir = 10;
for ($i = $awal; $i<=10; $i++){
echo "<h3>data ke $i<br></h3>";
}
?>
b. While
Perulangan while digunakan untuk mengulangi sebuah perintah hingga jumlah yang ditentukan.
Untuk menghentikan perulangan tersebut dibutuhkan suatu kondisi atau syarat tertentu. Seperti
pada perintah if ... else, nilai kondisi dari while memiliki nilai akhir yang bernilai salah atau
benar dimana perulangan akan terus berlangsung selama kondisi bernilai benar dan akan berhenti
apabila kondisi bernilai salah. Standar penulisannya adalah :
while (kondisi berhenti)
{
Pernyataan yang dijalankan;
}
<?
$count = 1;
while ($count <= 10)
{
echo "$count ";
$count += 2;
}
?>
c. Do ... While
12
Pengulangan ini fungsinya hampir sama dengan fungsi dari perintah while namun yang
membedakannya adalah perulangan ini akan dilakukan terlebih dahulu dan baru akan berhenti
apabila telah mencapai pada suatu kondisi untuk berhenti. Untuk standar penulisannya dalah :
do
{
Pernyataan yang dijalankan;
}
while (kondisi berhenti);
<?
$i = 1;
do {
echo "$i ";
$i++;
}
while ($i <= 10);
?>
Type Juggling, PHP juga menggunakan Type Casting, yang dapat menentukan secara manual
tipe data yang dimaksud.
-
Type Juggling
Type Juggling merupakan behaviour atau sifat dari variabel PHP yang akan secara otomatis
mengubah tipe data dari variabel tersebut tergantung dari operator yang digunakan ketika
memasukan isi dari variabel tersebut.
-
Type Casting
Tipe data dapat dirubah sesuai keinginan kita dengan menggunakan perintah Type Casting.
Perintah-perintah Type Casting diantaranya:
(int) , (integer) - Merubah Menjadi Integer
Oktal merupakan bilangan yang berbasis pada delapan angka dari 0 hingga 7. Dalam penulisan
bilangan oktal didahului dengan penulisan angka nol (0). Bilangan oktal ini berfungsi dalam
beberapa konteks, seperti penulisan perijinan sebuah data (file permission). Bagi anda yang telah
mengenal sistem UNIX, pasti tahu untuk merubah perijinan dari pemilik menjadi terbuka bagi
user, file permission file tersebut harus di ubah menjadi 0777.
Heksadesimal merupakan bilangan yang berbasi pada 16 bilangan, dimulai dengan 0x kemudian
diikuti dengan angka dari 0 hingga 9 atau huruf dari A hingga F. Dalam heksadesimal ini
penulisan huruf besar atau huruf kecil tidak menjadi masalah.
Code:
<?php
$a = 1234; // Bilangan desimal
$a = -123; // Bilangan negatif
$a = 0123; // Bilangan oktal (sama dengan bilangan 83 desimal)
$a = 0x1A; // hexadecimal number (sama dengan bilangan 26 desimal)
?>
b) Tipe data double / floating point numbers
Tipe data floating point numbers biasa juga disebut dengan double, float atau real adalah
tipe data yang berguna untuk menyimpan bilangan desimal. Sebagai contoh (0.1),(1.3),(1.7),
(1.8),(9.7),(2.4) dan lain-lain. Floating number mencerminkan sebuah bilangan numerik dengan
desimal digit, dalam bahasa C sama dengan double. Lebar dari floating number ini tergantung
dari platformapa yang anda gunakan. Umumnya lebar floating number lebih besar dari integer,
anda dapat menulis floating number dalam beberap cara. Rangkaian bilangan, rangkaian desimal
maupun scientific yang dikenal dengan bilangan eksponensial. Contohnya bila anda dapat
menuliskan 3.2 juta sebagai 3.2E6, huruf E dapat berupa UPPERCASE maupun LOWERCASE.
Code:
<?php
$a = 1.234;
$b = 1.2e3;
$c = 7E-10;
?>
Contoh penulisan tipe data float
<?php
$a = 1.234;
$b = 1.2e3;
$c = 2E-6
$d = 1.2E8;
?>
c) Tipe data boolean
Boolean merupakan sebuah type data yang sangat sederhana, dan merupakan nilai sebuah
kebenaran, karena akan bernilai True atau False saja. Penulisannya tidak dipengaruhi
penggunaan huruf besar atau kecil.
Contoh penulisan tipe data boolean
<?php
$a = TRUE; // bernilai 1
$b = true; // bernilai 1
$c = FALSE; // bernilai 0
$d = false; // bernilai 0
?>
15
/n
/r
/t
/v
/f
//
/$
Linefeed
Carriage return
Horizontal tab
Vertical tab
Form feed
Backslash
Dollar
Doublequote
Biasanya tipe data ini mayoritas digunakan untuk melakukan pengecekan kondisi pada php.
Biasanya digunakan pada if-else statement (untuk keterangan dan cara penggunaan if-else
statement akan dijelaskan di kemudian hari). Beberapa nilai yang dianggap sebagai FALSE oleh
php adalah sebagai berikut
string FALSE (dapat berupa huruf besar semua atau huruf kecil semua)
nilai integer 0
nilai real 0.0
empty string
nilai NULL
Setiap Tipe Data dalam PHP mempunyai Boolean untuk melakukan Seleksi Kondisi. dan Tipe
Data tersebut akan memberikan nilai true atau false pada seleksi kondisi tersebut.
Pada Variabel yang bertipe Data integer=0 (nol) mempunyai boolean false, selain itu true.
Pada Variabel yang bertipe Data float=0.0 (nol) mempunyai boolean false, selain itu true.
Pada Tipe Data string yang kosong, dan string="0" mempunyai boolean false, selain itu true.
Array yang tidak mempunyai element mempunyai boolean false, selain itu true.
Objek yang tidak mempunyai member mempunyai boolean false, selain itu true.
Tipe NULL dan Variabel yang belum terisi mempunyai boolean false.
2. Tipe data compound
Tipe data object dibuat dengan tujuan agar para programmer terbiasa dengan OOP. Tipe data
object bisa berupa bilangan, variabel atau fungsi. Data ini dapat dimasukkan ke dalam kode
program sehingga meringkas beberapa fungsi dan memperkecil ukuran file. Biar ga bingung
contoh mudahnya menggunakan variabel dengan nilai string :
Contoh :
<?
class blog{
function data_blog(){
echo "http://viruspintar.blogspot.com";
}
}
echo "<b>Wahyudi Blog</b> beralamat di ";
$data=new blog;
$data->data_blog();
?>
Contoh penulisan tipe data object
<?php
class makan{
var $lauk = "ayam";
function makan_malam($lauk){
$this-> lauk = $lauk;
}
}
$hari_ini = new makan;
echo $hari_ini->lauk;
?>
b. Tipe data array
Tipe data array digunakan untuk menyimpan banyak data dalam satu variabel. Jenis array
dalam php ada 3 (tiga) macam yakni
numeric array
associative array
multidimensional array
Sebagai contoh untuk memasukkan daftar nama- nama hari ke dalam suatu variabel, perhatikan
script dibawah :
Contoh penulisan array numeric
<?php
$hari[0]="Senin";
$hari[1]="Selasa";
$hari[2]="Rabu";
$hari[3]="Kamis";
$hari[4]="Jum'at";
$hari[5]="Sabtu";
$hari[6]="Minggu";
//menampilkan tanpa perulangan.
echo "sekarang adalah hari $hari[3] <br />" ;
//menampilkan menggunakan perulangan
18
Indeks dalam array dimulai dari angka/urutan ke-0. Jadi indeks dari array ke-0 adalah
elemen pertama dari array dan indeks dari array ke-1 adalah elemen kedua dari aray begitu juga
seterusnya.
Array Multidimensi
Dalam pemrograman PHP juga mengenal adanya penggunaan istilah array multidimensi
atau array bertingkat. Berikut adalah contohnya :
<?
$buah = array (
"apel" => array("warna" => "merah","rasa" => "manis"),
"pisang" => array("warna" => "kuning","rasa" => "manis")
);
echo "Warna buah apel adalah ".$buah["apel"]["warna"]."<br>";
echo "Rasa buah pisang adalah ".$buah["pisang"]["rasa"];
?>
20
21