You are on page 1of 18

<? $array[]=123; $array[]=123.456; $array[]=0765; $array[]='a'; $array[]='abc'; $array[]='def'.

'ghi'; $mobil=array( "sedan" => "Putih Silver", "jeep" => "Biru President", "station" => "Hijau Metalic" ); print "Nilai variabel \$array[0] = $array[0]<br>"; print "Nilai variabel \$array[1] = $array[1]<br>"; print "Nilai variabel \$array[2] = $array[2]<br>"; print "Nilai variabel \$array[3] = $array[3]<br>"; print "Nilai variabel \$array[4] = $array[4]<br>"; print "Nilai variabel \$array[5] = $array[5]<br>"; print "Isi \$mobil[sedan] = $mobil[sedan]<br>"; print "Isi \$mobil[jeep] = $mobil[jeep]<br>"; print "Isi \$mobil[station] = $mobil[station]<br>"; ?>

Gambar 6.22 Isi dari variable Array

6.2.3 Variabel Lokal dan Global


Suatu variable local hanya akan berlaku pada daerah yang terbatas, misalkan didalam suatu fungsi, semua variable yang digunakan didalam fungsi maka tidak akan dapat digunakan diluar fungsi tersebut, kecuali variable tersebut dideklarasikan dulu sebagai variable global.

103

Dideklarasi sebagai variable global

Variabel local

Gambar 6.23 Script PHP penggunaan variable local dan global

Ada peringatan karena variable tidak didefinisikan

Gambar 6.24 Tampilan penggunaan variable local dan global

6.3 Operator PHP


Operator yang digunakan dalam PHP adalah sama dengan yang digunakan pada bahasa C, adapun operator tersebut dibedakan menjadi 4 (empat) yaitu Operator Assignment, Operator Aritmatika, Operator Logika dan Operator Bitwise.

6.3.1 Operator Assignment


Operator assignment digunakan untuk memberikan nilai pada suatu variable tertentu, dimana dalam memberikan nilai dalam suatu variable dapat

104

dilakukan dulu proses aritmatika, berikut diberikan 7 (tujuh) operator assignment yaitu: 1. Sama dengan ( = ) 2. Ditambah dengan ( += ) 3. Dikurangi dengan ( -= ) 4. Dibagi dengan ( /= ) 5. Dikalikan dengan ( *= ) 6. Dimodulus dengan ( %= ) 7. Digabung dengan ( .= ) // untuk operasi string

6.3.2 Operator Aritmatika


Ada 5 (lima) operator aritmatika yaitu perkalian ( * ), pembagian ( / ), penambahan ( + ), pengurangan ( - ) dan modulus ( % ). Ditambah dengan 2 (dua) operator increment ( + +) dan decrement ( - -).

6.3.3 Operator Logika


Ada 10 (sepuluh) operator logika yaitu = =, !=, <, >, <=, >=, AND, OR, XOR dan ! (NOT). Untuk PHP4 ada tambahan satu lagi operator = = = (3x sama dengan) digunakan untuk membandingkan dengan tipe yang sama.

6.3.4 Operator Bitwise


Ada 7 (tujuh) operator bitwise yang digunakan untuk pengolahan bit yaitu & (and/ ampersand) , | (or/ vertical bar), ^ (xor/ ceret), >> (shift right), << (shift left) dan ~ (not).

6.4 Pernyataan Kondisi


Pernyataan kondisi digunakan untuk menentukan keputusan dan mengarahkan jalannya aliran program, terdapat 6 (enam) pernyataan kondisi yaitu if-else, switch-case, while, do-while, for, dan foreach.

105

6.4.1 Pernyataan if-else


Berikut adalah file IF.HTML dan IF.PHP yang digunakan untuk pengujian suatu kondisi, dimana data variable dikirimkan melalui tag <FORM>. Dibawah ini adalah script dari file IF.HTML: <HTML> <HEAD> <TITLE>Kirim data dengan metode GET</TITLE> </HEAD> <BODY> MASUKKAN NILAI<BR> <FORM ACTION="IF.PHP" METHOD=GET> <INPUT TYPE=TEXT NAME=KONDISI> <INPUT TYPE=SUBMIT NAME=KIRIM VALUE=KIRIM> </FORM> </BODY> </HTML> Dibawah ini adalah script dari file IF.PHP <? if($_GET["KIRIM"]=="KIRIM") { if($_GET["KONDISI"]) print "Kondisi = BENAR<BR>"; else print "Kondisi = SALAH<BR>"; } ?>

2. Klik disini 1. Diisi dengan 1

Gambar 6.25 Kirim data dengan metode GET

106

Gambar 6.26 Tampilan kondisi yang dikirimkan Dibawah ini adalah script dari file IF2.HTML <HTML> <HEAD> <TITLE>IF bertingkat</TITLE> </HEAD> <BODY> MASUKKAN NILAI<BR> <FORM ACTION="IF2.PHP" METHOD=GET> <INPUT TYPE=TEXT NAME=HASIL> <INPUT TYPE=SUBMIT NAME=KIRIM VALUE=KIRIM> </FORM> </BODY> </HTML>

Gambar 6.27 Mengirim data Nilai

107

Dibawah ini adalah script dari file IF2.PHP <? if($_GET["KIRIM"]) { $nilai=$_GET["HASIL"]; print "NILAI = $nilai<br>"; print "TERMASUK KRITERIA = "; if($nilai<40.5) print "E"; elseif($nilai<55.5) print "D"; elseif($nilai<59.5) print "C"; elseif($nilai<65.5) print "BC"; elseif($nilai<75.5) print "B"; elseif($nilai<80.5) print "AB"; elseif($nilai<100) print "A"; else print "Salah memasukkan nilai"; } ?>

Gambar 6.28 Tampilan dari IF2.PHP (if bertingkat)

6.4.2 Pernyataan switch-case


Pernyataan switch adalah serupa dengan if bertingkat yang mempunyai kondisi sama dengan, sehingga akan lebih praktis bila digunakan pernyataan switch.

108

Fungsi tanggal date yang disediakan oleh PHP adalah menggunakan bahasa inggris untuk menyatakan hari dan bulan, untuk mengubah menjadi bahasa Indonesia maka dapat digunakan switch-case. Sebelum itu maka perlu diketahui dahulu tentang fungsi tanggal tersebut sebagai berikut: Fungsi tanggal akan memberikan waktu string yang formatnya tergantung dari format string yang diberikan yaitu secara timestamp integer atau waktu setempat saat itu. Jangkauan dari timestamp adalah dari Fri, 13 Dec 1901 20:45:54 GMT sampai Tue, 19 Jan 2038 03:14:07 GMT. Tanggal ini adalah berhubungan dengan nilai minimum dan maksimum dari suatu integer bertanda 32-bit. Untuk mendapatkan timestamp dari string yang mewakili tanggal maka dapat digunakan fungsi strtotime(). Tambahan, beberapa basis data mempunyai fungsi untuk mengkonversi format tanggalnya sendiri kedalam timestamp (seperti fungsi MySQL UNIX_TIMESTAMP). Adapun karakter-karakter yang dikenal dalam format string adalah: Tabel 6.1 Format string Tanggal
No
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26

Karakter
(lower) A B (lower) D F (lower) G (lower) H (Lower) I (lower) (lower) L (lower) M (lower) O (lower) (lower) S (lower) T (lower) Y a d g h i j l m n r s t y

Keterangan
am atau pm AM atau PM Waktu Internet Tanggal dengan 2 digit, seperti 06, 29 Nama Hari, seperti Fri, Sun Bulan seperti February, August Jam dengan jangkauan 12 jam seperti 6, 12 Jam dengan jangkauan 24 jam seperti 6, 17, 23 Jam dengan jangkauan 12 jam seperti 06, 12 Jam dengan jangkauan 24 jam seperti 06, 17, 23 Menit seperti 00, 06, 58 Daylight (siang/ malam), menghasilkan 0 atau 1 Tangggal tanpa diawali akan nol, seperti 6, 9, 21 Nama hari secara lengkap, seperti Friday, Sunday Kabisat, menghasilkan 0 atau 1 Bulan ditampilkan dengan angka seperti 06, 08, 12 Bulan ditampilkan secara tiga huruf Feb, Aug, Dec Bulan tanpa nol didepan seperti 2, 6, 11 Perbedaan dengan Greenwich seperti +0700 Format RFC822, Thu, 21 Dec 2000 16:01:07 +0200" (PHP 4.0.4) Detik seperti 01, 25, 55 English ordinal suffix Jumlah hari dari satu bulan, bernilai dari 28 sampai 31 Timezone setting dari mesin, seperti MDT Tahun secara dua digit, seperti 02, 03, 04 Tahun secara empat digit, seperti 2002, 2003, 2004

109

<? $tgl=date("d"); $bln=date("m"); $thn=date("Y"); switch($bln) { case "01": $bulan="January"; break; case "02": $bulan="February"; break; case "03": $bulan="Maret"; break; case "04": $bulan="April"; break; case "05": $bulan="Mei"; break; case "06": $bulan="Juni"; break; case "07": $bulan="Juli"; break; case "08": $bulan="Agustus"; break; case "09": $bulan="September"; break; case "10": $bulan="Oktober"; break; case "11": $bulan="Nopember"; break; case "12": $bulan="Desember"; break; } print "Sekarang Tanggal : $tgl<br>"; print "Sekarang Bulan : $bulan<br>"; print "Sekarang Tahun : $thn<br>"; ?>

Hasil dari switch-case

Gambar 6.29 Tampilan format tanggal menggunakan switch

6.4.3 Pernyataan While


Digunakan untuk membuat proses perulangan dimana akan memeriksa dahulu kondisi yang disyaratkan, bila kondisi benar maka akan dilakukan proses perulangan dan bila kondisi salah maka loop tidak dikerjakan. Kesalahan penentuan kondisi akan menyebabkan proses perulangan tak terhingga.

110

<? $hari=array ( "Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu", "" ); $i=0; print "NAMA-NAMA HARI:<br>"; while($ada_hari=$hari[$i]) { print "$ada_hari<br>"; $i++; } ?>

Gambar 6.30 Menampilkan Nama-nama Hari menggunakan While

6.4.4 Pernyataan Do-While


Hampir sama dengan pernyataan while, perbedaannya adalah kondisi diletakkan diakhir dari proses perulangan, sehingga proses dikerjakan dulu kemudian baru diperiksa kondisinya, sehingga paling tidak proses perulangan dilakukan sekali. Sama halnya dengan proses perulangan diatas bahwa kesalahan dalam menentukan kondisi menyebabkan proses perulangan yang tak terhingga, yang menyebabkan komputer hang (macet).

111

<? $hari=array ( "Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu", "" ); $i=0; print "NAMA-NAMA HARI:<br>"; do { print "$hari[$i]<br>"; $i++; } while($i<7); ?>

Gambar 6.31 Menampilkan Nama-nama Hari menggunakan do-while

6.4.5 Pernyataan For


Berbeda dengan perulangan diatas, dengan pernyataan for maka indeks awal dari perulangan dan indeks akhir dari perulangan sudah ditentukan sehingga dapat menghindarkan dari proses loop yang tak terhingga karena penentuan kesalahan kondisi. Sedangkan bila diinginkan proses perulangan tak terhingga dapa dilakukan dengan menulis for(;;), yaitu tanpa kondisi.

112

<? print "<H4>DAFTAR KONVERSI TEMPERATUR</H4>"; print "<TABLE BORDER=1>"; print "<TR><TH>CELSIUS</TH>"; print "<TH>FAHRENHEIT</TH><TH>REAMUR</TH></TR>"; for($Celsius=0; $Celsius<=100; $Celsius+=10) { $Reamur=(4/5)*$Celsius; $Fahrenheit=(9/5)*$Celsius+32; print "<TD>$Celsius</TD>"; print "<TD>$Fahrenheit</TD>"; print "<TD>$Reamur</TD></TR>"; } ?>

Gambar 6.32 Tampilan Tabel Konversi Temperatur dengan for

113

6.4.6 Pernyataan Foreach


Digunakan untuk mempermudah penggunaan pernyataan perulangan, dimana tidak diperlukan indeks lagi untuk menunjuk isi dari variable array. Dengan demikian program akan semakin praktis, bandingkan dengan pernyataan perulangan diatas. <? $hari=array ( "Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu", "" ); print "NAMA-NAMA HARI:<br>"; foreach($hari as $ada_hari) { print "$ada_hari<br>"; } ?>

Gambar 6.33 Tampilan Nama-nama Hari menggunakan foreach

6.5 Fungsi-Fungsi dalam PHP


Seperti telah dijelaskan diatas bahwa PHP terdiri dari banyak fungsi yang meliputi fungsi matematika, fungsi string, fungsi file teks, fungsi tanggal &

114

waktu, fungsi pengolah basis data, fungsi grafik dan fungsi lainnya. Berikut ini akan dibahas beberapa fungsi yang banyak digunakan dalam pemrograman web.

6.3.1 Fungsi-fungsi Matematika


Fungi yang akan dicoba sebagai contoh disini adalah penggunaan fungsi sin() dan fungsi cos(), sehingga dapat memberikan gambaran tentang penggunaan fungsi matematika yang lain seperti abs(), acos(), acosh(), asin(), asinh(), atan(), atan2(), atanh(), ceil(), cos(), cosh(), max(), min(), pi(), pow(), rand(), round(), sin(), sqrt(), srand(), tan(), dan lainnya (lihat pada file help yaitu pada file php_manual_en.chm). <? print "<H3>Tabel SINUS & COSINUS</H3>"; print "<table border=1><tr>"; print "<th align=left>X</th>; print "<th align=left>SIN(X) </th>"; print "<th align=left>COS(X)</th></tr>"; for($derajat=0; $derajat<360; $derajat++) { $sinus=sin($derajat*pi()/180); $cosinus=cos($derajat*pi()/180); print "<tr><td>$derajat</td>"; print "<td>$sinus</td><td>$cosinus</td></tr>"; } ?>

Gambar 6.33 Tampilan penggunaan fungsi matematika

115

6.3.2 Fungsi-fungsi String


Guna mengolah suatu string dapat digunakan fungsi yang sesuai dengan yang dimaksud, adapun fungsi-fungsi yang disediakan untuk pengolahan string adalah fungsi array(), array_filter(), array_merge(), arsort(), strcmp(), strlen(), strpos(), strtolower(), strtoupper(), strstr(), substr(), dan lainnya. Berikut diberikan beberapa contoh penggunaan dari fungsi string tersebut sebagai berikut: <? function ganjil($para) { return ($para % 2 == 1); } function genap($para) { return ($para % 2 == 0); } $angka=array(1,2,3,4,5,6,7,8,9,10,11,12); print "Memisahkan isi array ganjil dan genap<p>"; print "Array yang berisi bilangan Ganjil:<br>"; print_r(array_filter($angka, "ganjil")); print "<p>"; print "Array yang berisi bilangan Genap:<br>"; print_r(array_filter($angka, "genap")); ?>

Gambar 6.34 Tampilan pemisahan isi array dengan array_filter

116

6.3.2.1 Fungsi sort() dan assort() Fungsi untuk mengurutkan suatu array biasanya dilakukan dengan pembuatan fungsi sorting dengan metode tertentu (seperti bubble sort). Fungsi sorting tersebut sudah disediakan oleh PHP sehingga tinggal digunakan dan data dapat disimpan pada suatu variable array. Ada dua fungsi yang disediakan untuk proses pengurutan suatu data yaitu fungsi asort() dimana kunci data (field pertama) yang diurutkan berupa alfanumerik, sedangkan yang kedua adalah fungsi sort() dimana kunci data adalah numeric, apabila fungsi sort() digunakan pada field yang bukan numeric maka isinya akan diubah menjadi angka numeric dari 0 sampai n. <? $nilai=array( "anita"=>70, "berbi"=>80, "carina"=>60, "dini"=>90, "erika"=>95, "fira"=>65, "gina"=>85, "hani"=>75, "ineke"=>50, "jeri"=>55 ); print "<FONT SIZE=4>Sebelum dilakukan sorting:</FONT><br>"; for($i=0; $i<count($nilai); $i++) { list($key, $val)=each($nilai); print "$key = $val, "; } print "<p>"; asort($nilai); print "<FONT SIZE=4>Setelah dilakukan sorting: sort()</FONT><br>"; for($i=0; $i<count($nilai); $i++) { list($key, $val)=each($nilai); print "$key = $val, "; } print "<p>"; sort($nilai); print "<FONT SIZE=4>Setelah dilakukan sorting: asort()</FONT><br>"; for($i=0; $i<count($nilai); $i++) { list($key, $val)=each($nilai); print "$key = $val, "; }

117

Gambar 6.35 Tampilan data array yang dilakukan proses pengurutan 6.3.2.2 Fungsi array_merge() Fungsi array_merge() digunakan untuk menggabungkan beberapa array menjadi satu array sekaligus, seperti dibawah ini: <? $komputer = array( "motherboard"=>"ASUS P4B533", "cpu"=>"Intel Pentium 4", "memory"=>"Spectec PC2100 256MB", "vga"=>"AOpen GeForce2X 400MX", "keyboard"=>"Logitech New Touch", "monitor"=>"Philips 107S 17" ); $aksesoris = array( "harddisk"=>"Quantum 7200RPM 20GB", "diskdrive"=>"Panasonic 1.44MB", "soundcard"=>"Sound Blaster Vibra 128", "Lancard"=>"DLINK DE-538TX 10/100Mbps", "modem"=>"Motorolla 56Kbs", "cdrom"=>"ASUS 52Xmax" ); $array_gabung=array_merge($komputer, $aksesoris); for($i=0; $i<count($array_gabung); $i++) { list($key, $val)=each($array_gabung); print "$key = $val<br>"; } ?>

118

Gambar 6.36 Hasil penggabungan array dengan fungsi array_merge() 6.3.2.3 Fungsi substr() Ada kalanya diperlukan data string yang merupakan bagian dari data string lainnya, untuk keperluan tersebut maka dapat digunakan fungsi substr(), dimana fungsi ini dapat mengambil bagian string dengan memberikan 3 (tiga) parameter yaitu variable string asal, awal string yang diinginkan, dan panjang string yang akan diambil. Misalkan suatu variable tipe string terdiri dari beberapa kata yaitu SELAMAT BELAJAR PEMROGRAMAN WEB DENGAN PHP, maka bila diinginkan diambil sebagian kata dari string tersebut (misal BELAJAR) maka dapat dilakukan dengan cara sebagai berikut: <? $kalimat="SELAMAT BELAJAR PEMROGRAMAN WEB DENGAN PHP"; $kata1=substr($kalimat,0,7); // "SELAMAT" $kata2=substr($kalimat,8,7); // "BELAJAR" $kata3=substr($kalimat,15,12); // "PEMROGRAMAN" $kata4=substr($kalimat,28,3); // "WEB" $kata5=substr($kalimat,32,6); // "DENGAN" $kata6=substr($kalimat,39,3); // "PHP" $KATA1=substr($kalimat,-42,7); // "SELAMAT" $KATA2=substr($kalimat,-34,7); // "BELAJAR" $KATA3=substr($kalimat,-26,12); // "PEMROGRAMAN" $KATA4=substr($kalimat,-14,3); // "WEB" $KATA5=substr($kalimat,-10,6); // "DENGAN" $KATA6=substr($kalimat,-3,3); // "PHP"

119

print print print print print print print print print print print print ?>

"$kata1 "$kata2 "$kata3 "$kata4 "$kata5 "$kata6 "$KATA6 "$KATA5 "$KATA4 "$KATA3 "$KATA2 "$KATA1

"; "; "; "; "; <p>"; "; "; "; "; "; ";

Posisi awal dari data string yang akan diambil, dapat dimulai dari depan maupun belakang, bila posisi dari belakang maka dihitung mundur dengan angka minus, seperti pada variable $KATA1 sampai $KATA6.

Gambar 6.37 Tampilan hasil dari fungsi substr()

120

You might also like