Anda di halaman 1dari 12

1.

Pengenalan PHP
PHP (akronim dari PHP Hypertext Preprocessor) yang merupakan bahasa pemrogramman berbasis web yang memiliki kemampuan untuk memproses data dinamis. PHP dikatakan sebagai sebuah server-side embedded script language artinya sintaks-sintaks dan perintah yang kita berikan akan sepenuhnya dijalankan oleh server tetapi disertakan pada halaman H !" biasa. #plikasi-aplikasi yang dibangun oleh PHP pada umumnya akan memberikan hasil pada web browser$ tetapi prosesnya secara keseluruhan dijalankan di server. Pada prinsipnya server akan bekerja apabila ada permintaan dari client. %alam hal ini client menggunakan kode-kode PHP untuk mengirimkan permintaan ke server (dapat dilihat pada gambar dibawah). &etika menggunakan PHP sebagai server-side embedded script language maka server akan melakukan hal-hal sebagai berikut '

!embaca permintaan dari client(browser !encari halaman(page di server !elakukan instruksi yang diberikan oleh PHP untuk melakukan modi)ikasi pada halaman(page. !engirim kembali halaman tersebut kepada client melalui internet atau intranet.
Gets page <HTML> <HTML> <? PHP <?PHP echo <B>Hello</B>; echo <B>Hello</B>; ?> ?> </HTML> </HTML> <HTML> <HTML> <B>Hello</B> <B>Hello</B> </HTML> </HTML>

HTTP request

WEB SERVER

Server Response

CLIENT

Browser creates the web page

Hello

Mengapa PHP? PHP dapat dijalankan pada plat)orm yang berbeda-beda (*indows$ "inux$ +nix$ etc.)

PHP merupakan web scripting open source PHP mudah dipelajari

,. Syntax PHP

&ode PHP disimpan sebagai plain text dalam )ormat #-.//$ sehingga kode PHP dapat ditulis hampir di semua editor text seperti windows notepad$ windows wordpad$ dll. &ode PHP adalah kode yang disertakan di sebuah halaman H !" dan kode tersebut dijalankan oleh server sebelum dikirim ke browser.

.ontoh )ile PHP (contoh.php)' 0html1 02 Print (3.ontoh text yang menggunakan kode PHP3)4 21 0(html1 Pada )ile .html$ H P server hanya melewatkan content dari )ile menuju ke browser. -erver tidak mencoba untuk mengerti atau memproses )ile$ karena itu adalah tugas sebuah browser. Pada )ile dengan ekstensi .php akan ditangani secara berbeda. 5ang memiliki kode PHP akan diperiksa. *eb server akan memulai bekerja apabila berada diluar lingkungan kode H !". 6leh karena itu server akan melewati semua content yang berisi kode H !"$ .--$ 7ava-cript$ simple text di browser tanpa diinterpretasikan di server. 8lok scripting PHP selalu diawali dengan 02php dan diakhiri dengan 21. 8lok scripting PHP dapat ditempatkan dimana saja di dalam dokumen. Pada beberapa server yang mendukung$ blok scripting PHP dapat diawali dengan 02 dan diakhiri dengan 21. 9amun$ untuk kompatibilitas maksimum$ sebaiknya menggunakan bentuk yang standar (02php 21). -etiap baris kode PHP harus diakhiri dengan semikolon (4). -emikolon ini merupakan separator yang digunakan untuk membedakan satu instruksi dengan instruksi lainnya. PHP menggunakan (( untuk membuat komentar baris tunggal atau (: dan :( untuk membuat suatu blok komentar.

;. <ariabel PHP
<ariabel digunakan untuk menyimpan suatu nilai$ seperti text$ angka atau array. &etika sebuah variabel dibuat$ variabel tersebut dapat dipakai berulang-ulang. Pada PHP semua variabel harus dimulai dengan karakter =>=. <ariabel PHP tidak perlu dideklarasikan dan ditetapkan jenis datanya sebelum kita menggunakan variabel tersebut. Hal itu berarti pula bahwa tipe data dari variabel dapat berubah sesuai dengan perubahan konteks yang dilakukan oleh user. -ecara tipikal$ variabel PHP cukup diinisialisasikan dengan memberikan nilai kepada variabel tersebut.
.ontoh berikut akan mencetak 3PHP3 '

>text ? 3PHP34 print 3>text34


/denti)ier dalam PHP adalah case-sensitive$ sehingga >text dengan > ext merupakan variabel yang berbeda. 8uilt-in )unction dan structure tidak case-sensitive$ sehingga echo dengan @.H6 akan mengerjakan perintah yang sama. /denti)ier dapat berupa sejumlah huru)$ digit(angka$ underscore$ atau tanda dollar tetapi identi)ier tidak dapat dimulai dengan digit(angka.

Aturan Penamaan Variabel 9ama variabel harus diawali dengan sebuah huru) atau garis bawah (underscore) ABC

9ama variabel hanya boleh mengandung karakter alpha-numeric dan underscore (a-D$ EF$ dan B ) 9ama variabel tidak boleh mengandung spasi.

G. -tring di PHP
<ariabel string digunakan untuk nilai yang mengandung k arakter string. Pada contoh berikut$ skript
PHP memberikan string 3Hello *orld3 pada variabel string bernama >txt ' 02php >txt?3Hello *orld34 echo >txt4 21 &eluaran kode tersebut adalah ' Hello *orld Hanya ada satu operator string di PHP. Concatenation operator (.). digunakan untuk menggabungkan dua string. .ontoh ' 02php >txt1?3Hello *orld34 >txt,?31,;G34 echo >txt1 . 3 3 . >txt,4 21 &eluaran kode tersebut adalah ' Hello *orld 1,;G

H. 6perator di PHP
6perator digunakan untuk menentukan sebuah nilai dengan melakukan suatu prosedur$ atau dengan suatu operasi dari beberapa nilai. 9ilai yang digunakan dalam sebuah operasi disebut operand. Penjumlahan adalah sebuah contoh sederhana dari suatu operasi.

-ebagai contoh ' , I G


, dan G adalah sebuah operand. @kspresi ini akan menghasilkan J.

Arithmetic Operator (Operator Aritmatika)


PHP menggunakan operator arithmetic dasar '

6perato r I : ( K

#ksi Penjumlaha n Penguranga n Perkalian Pembagian !odulus

.onto h HIF F-G H:J ,E ( G FKG

Penejelasan !enghasilkan nilai ' 1G !enghasilkan nilai ' H !enghasilkan nilai ' ;E !enghasilkan nilai ' H !enghasilkan nilai ' 1

PHP mengabaikan karakter spasi dalam sebuah operasi. @kspresi >x ? H I F dengan dengan >x?HIF akan menghasilkan nilai yang sama. Penggunaan spasi disesuaikan dengan keinginan dari para user.

Unary Operator anda minus ( - ) digunakan dengan sebuah nilai numerik tunggal untuk menegati)kan sebuah bilangan (untuk membuat negati) bilangan posti) atau membuat posti) bilangan negati)).
.ontoh ' >x ? ,4 >y ? ->x4 (( >y ? -,

>i ? -,;G4 >j ? ->i4 (( >j ? ,;G

Variable Assignment Operator anda sama dengan ( ? ) digunakan untuk mengatur atau menetapkan nilai suatu variabel. 6leh karena itu tanda tersebut dikenal sebagai operator penugasan.
.ontoh ' >x ? 14 >y ? x I 14 >luas ? >panjang : >lebar4 >statements ? 35es34 <ariabel disebelah kiri tanda ( ? ) akan diberikan nilai dari ekspresi disebelah kanan tanda ( ? ).

Comparison Operator (Operator Perbandingan) 6perator perbandingan digunakan untuk menguji suatu kondisi. @kspresi yang menggunakan operator perbandingan akan selalu menghasilkan nilai boolean$ yaitu antara true (benar) atau )alse (salah). .ontoh ' >i ? G4

i) (>i 0 J) print 3akan dilakukan pencetakan34 (( ekspresi =>i 0 J= adalah benar

i) (>i 1 J) print 3tidak akan tercetak34 (( ekspresi =>i 1 J= adalah salah

8eberapa operator perbandingan yang lain adalah sebagai berikut '

6perato r ?? 0 1 0?

#rti -ama dengan &urang dari "ebih dari &urang dari atau sama dengan

.ontoh >i ?? >j >i 0 >j >i 1 >j >i 0? >j

!enghasilkan benar (true) ketika ' >i dan >j mempunyai nilai yang sama >i kurang dari >j >i lebih dari >j >i kurang dari atau sama dengan >j

1? L? 01 ???

"ebih dari atau sama dengan idak dengan idak dengan /dentik sama sama

>i 1? >j >i L? >j >i 01 >j >a >b ???

>i lebih dari atau sama dengan >j >i tidak sama dengan >j >i tidak sama dengan >j 8enar jika >a sama dengan >b$ dan keduanya memiliki type data yang sama.(hanya dalam PHPG)

/ngat L
anda ( ?? ) merupakan operator perbandingan untuk menguji suatu variabel sedangkan tanda ( ? ) adalah operator penugasan untuk memberikan nilai kepada suatu variabel. Perhatikan dua contoh dibawah ini. .ontoh salah L >i ? ;4 i)(>i ? H) print 3lima34 (( akan mencetak lima. Pernyataan >i?; akan diabaikan

>i ? ;4 i)(H ? >i) print 3lima34 (: parse error terdapat kesalahan. PHP berusaha memberikan nilai >i kepada bilangan M :(

.ontoh 8enar L >i ? ;4 i)(>i ?? H) print 3lima34 (( >i ?? H menghasilkan nilai )alse (salah) sehingga pernyataan (( print 3lima3 tidak dijalankan.

>i ? ;4 i)(H ?? >i) print 3lima34 (( H ?? >i menghasilkan nilai )alse (salah) sehingga pernyataan (( print 3lima3 tidak dijalankan.

>a ? 3M34 >b ? M.EE4 print (>a ?? >b)4 (( mencetak 1 (true)

print ((>a ?? >b) and (gettype(>a) ?? gettype(>b)))4 (( mencetak E

Logical Operator (Operator Logika)

6perator logika digunakan untuk mengkombinasikan kondisi$ sehingga beberapa kondisi dapat dievaluasi atau diperiksa dalam sebuah ekspresi. -ebagai contoh logika #9% akan bernilai true jika semua kondisi benar. abel berikut ini menunjukkan semua anggota dari operator logika ' 6perator #9% ( and 6O ( or Q6O 96
.ontoh ' >i ? 14 >j ? ,4 >k ? ;4

.ontoh >i NN >j atau >i #9% >j >i PP >j atau >i 6O >j >i Q6O >j L>i

8ernilai benar jika ' >i dan >j bernilai bernilai benar -alah satu atau kedua variabel bernilai benar -alah satu variabel bernilai benar$ tetapi tidak keduanya benar >i tidak bernilai benar

i)(>i??1 NN >j??, NN >k??;) print 3akan tercetak34 (( akan mengeksekusi pernyataan print

i)(>i??1 6O >k??;) print 3akan tercetak34 (( akan mengeksekusi pernyataan print

i)(>i??1 Q6O >j??,) print 3akan tercetak34 (( tidak mengeksekusi pernyataan print karena kedua variabel ((bernilai benar

i) L(>i??1 NN >k??;) print 3akan tercetak34 (( tidak akan mengeksekusi pernyataan print

i) ((>i??1 NN >k??;) Q6O (>i??1 PP >j?,) Q6O (>i??1)) print 3akan tercetak34 (( akan mengeksekusi pernyataan print

tring Concatenation Operator anda titik ( . ) sebagai operator concatenate (penggabung) digunakan untuk menggabungkan dua atau lebih nilai string menjadi sebuah string tunggal.
.ontoh ' >subjek ? 3saya34 >predikat ? 3sedang belajar34 >objek ? 3PHP34 >kalimat ? >subjek.3 3.>predikat.3 3.>objek4

print >kalimat4

(( akan mencetak saya sedang belajar PHP

print 3>kalimatversi ;34 print 3>kalimat versi ;34

(( akan akan mencetak ; (( akan mencetak saya sedang belajar PHP versi ;

print 3>RkalimatS versi ;34(( akan mencetak saya sedang belajar PHP versi ;

>bilangan ? 308110(81Nnbsp434 >bilangan .? 30/1,0(/1Nnbsp434 >bilangan .? 30+1;0(+134

print >bilangan4

(( akan mencetak 1 , ;

Variable Assignment hortcut


Pada PHP dimungkinkan untuk melakukan penggunaan jalan pintas untuk operator pada pernyataan penugasan dimana operand pertama adalah sebuah variabel dan hasilnya disimpan pada variabel yang sama.

.ontoh >x I? >y >x -? >y >x :? >y >x (? >y >x K? >y >x N? >y >x P? >y >x T? >y >x .? >y >x 11? , >x 00? , >xII >x-.ontoh '

@kivalen dengan >x ? >x I >y >x ? >x - >y >x ? >x : >y >x ? >x ( >y >x ? >x K >y >x ? >x N >y >x ? >x P >y >x ? >x T >y >x ? >x . >y >x ? >x 11 , >x ? >x 00 , >x ? >x I 1 >x ? >x - 1

>x ? 1E4 >xII4

(( >x bernilai 1E (( >x bernilai 11

>x ? 1E4 II>x4

(( >x bernilai 1E (( >x bernilai 11

tetapi$

>x ? 1E4

(( >x bernilai 1E

>y ? >xII4 (( >x bernilai 11 tetapi >y bernilai 1E >x ? 1E4 (( >x bernilai 1E

>y ? II>x4 (( >x dan >y bernilai 11 (( penugasan terjadi setelah penambahan

J. Control Structures di PHP


-krip PHP terdiri dari rangkaian pernyataan. -ebuah pernyataan dapat berupa assignment$ pemanggilan )ungsi$ sebuah loop$ pernyataan kondisional atau bahkan pernyataan kosong. Pernyataan biasanya diakhiri dengan semikolon. -ebagai tambahan$ pernyataan-pernyataan dapat dikelompokkan menjadi suatu kelompok pernyataan menggunakan kurung kurawal ( RS ). -ebuah kelompok pernyataan merupakan sebuah pernyataan juga.

/U -yntax ' i) (expr) statement .ontoh ' - i) ($a > $b) print "a is bigger than b"; - 7ika statemen lebih dari satu maka ' i) (>a 1 >b) R print 3a is bigger than b34 >b ? >a4 S

@lse i) (>a 1 >b) R print 3a is bigger than b34 S else R print 3a is 96 bigger than b34 S

@lsei) i) (>a 1 >b) R print 3a is bigger than b34 S elsei) (>a ?? >b) R print 3a is eVual to b34 S else R print 3a is smaller than b34 S

-witch

Pernyataan switch mirip dengan rangkaian pernyataan /U dengan ekspresi yang sama. Pernyataan switch digunakan untuk membandingkan variabel yang sama (atau ekspresi) dengan banyak nilai yang berbeda$ dan menjalankan kode-kode yang berbeda tergantung pada nilai mana variabel tersebut sama. -angat penting untuk memahami bagaimana pernyataan switch dieksekusi agar terhindar dari kesalahan. Pernyataan switch dieksekusi per pernyataan. %i awal$ tidak ada kode yang dieksekusi. &etika pernyataan case sesuai dengan ekspresi pada switch$ PHP mulai mengeksekusi pernyataan-pernyataan tersebut. PHP terus mengeksekusi pernyataanpernyataan tersebut hingga akhir blok switch$ atau pada saat pertama kali bertemu pernyataan

break. 7ika tidak ada pernyataan break$ PHP akan mengeksekusi pernyataan-pernyataan pada case berikutnya. .ontoh' switch (>i) R case E' print 3i eVuals E34 case 1' print 3i eVuals 134 case ,' print 3i eVuals ,34 S Pada pernyataan switch$ kondisi (ekspresi) hanya diperiksa sekali dan hasilnya dibandingkan dengan setiap pernyataan case.

*hile

Perulangan while merupakan perulangan yang paling sederhana di PHP. 8entuk dasar pernyataan while adalah ' while (expr) statement Pada while$ PHP mengeksekusi pernyataan-pernyataan bersarang ( nested statement(s)) berulang-ulang$ selama ekspresi yang dievaluasi bernilai benar ( TRUE). 9ilai ekspresi tersebut diperiksa setiap saat di awal perulangan. 7ika hasil evaluasi ekspresi adalah salah ( FA SE) sejak awal$ pernyataan-pernyataan bersarang tersebut tidak akan dijalankan meskipun sekali. .ontoh ' >i ? 14 while (>i 0? 1E) R print >iII4 (: the printed value would be >i be)ore the increment (post-increment) :( S

%o ... while

Perulangan do..while loops hamper sama dengan perulangan while$ kecuali kebenaran ekspresi dicek di akhir iterasi. Perbedaan mendasar dari perulangan while adalah iterasi pertama pada doWwhile pasti akan dijalankan. .ontoh ' >i ? E4 do R print >i4 S while (>i1E)4

Uor

Syntax : )or (expr14 expr,4 expr;) statement @kspresi pertama (expr1) dievaluasi (dieksekusi) sekali di awal perulangan. %i awal setiap iterasi$ expr, dievaluasi. 7ika benar$ perulangan dilanjutkan dan pernyataan-pernyataan bersarang dieksekusi. 7ika salah$ perulangan dihentikan. %i akhir setiap iterasi$ expr; dievaluasi (dieksekusi). .ontoh ' )or (>i ? 14 >i 0? 1E4 >iII) R print >i4

M. #rray di PHP
Array sederhana %alam PHP$ sebuah variabel dapat dinyatakan sebagai sebuah tempat untuk sebuah nilai tunggal. -edangkan #rray adalah sebuah tempat untuk sekumpulan nilai. -ebuah array terdiri dari sejumlah element$ yang masing-masing memiliki sebuah nilai - data yang tersimpan pada elemen array tersebut - dan sebuah key atau index$ dimana elemen tersebut dapat dirujuk. 9ormalnya$ sebuah index berupa integer. -ecara de)ault$ array adalah basis nol$ artinya elemen pertama dari array memiliki index nol. akan tetapi index dapat juga berupa string. 8entuk sederhana array terdiri dari serangkaian elemen yang bertanda dimulai dari nol dan bertambah secara sekuensial. -ebagai contoh sebuah array bernama >branch$ setiap elemen berisi nama kota cabang sebuah perusahaan. >branchXEY 3-emarang3 >branchX1Y 3-urabaya3 >branchX,Y 3!edan3 >branchX;Y 38andung3 >branchXGY 35ogyakarta3

#rray dalam PHP dapat berisi elemen dari sejumlah tipe data yang berbeda. #rtinya array dalam PHP tidak harus memiliki tipe data yang sama. -etiap elemen dapat berupa tipe data apa saja. #da tiga jenis array di PHP'

9umeric array Z #rray dengan dengan kunci /% numerik #ssociative array Z #rray dimana setiap kunci /% berasosiasi dengan sebuah nilai !ultidimensional array - #rray yang menyimpan satu atau lebih array

!nisialisasi array #da banyak cara untuk melakukan inisialisasi sebuah array. .ara pertama yang sederhana adalah cukup dengan memberikan nilai kepada variabel array. >branchXY ? 3-emarang34 >branchXY ? 3-urabaya34 >branchXY ? 3!edan34 7ika tanda kurung siku pada variabel array tidak diberikan nilai index$ maka secara de)ault maka element sebenarnya bernilai index E$1$,$.... contoh dibawah akan menghasilkan array yang sama dengan contoh diatas. >branchXEY ? 3-emarang34 >branchX1Y ? 3-urabaya34 >branchX,Y ? 3!edan34 %alam prakteknya$ pemberian index dilakukan secara sekuensial atau berurutan. etapi dilain hal dapat dilakukan peng-indekkan secara acak sesuai keinginan user. >branchX,EY ? 3-emarang34 >branchX,,Y ? 3-urabaya34 >branchX,;Y ? 3!edan34

print >branchX,;Y (( print !edan #rray tersebut memiliki tiga buah elemen juga tetapi indeksnya merupakan bilangan acak yaitu ,E$ ,,$ ,;. 7ika menginginkan jumlah dari elemen array yang terdapat pada sebuah variabel array$ dapat digunakan )ungsi count(). Uungsi tersebut mengembalikan nilai )ungsi berupa integer yang menyatakan jumlah elemen array. >branchX,EY ? 3-emarang34 >branchX,;Y ? 3-urabaya34 >branchXY ? 3!edan34 (( memiliki indeks ,G (( bilangan indeks kedua setelah (( bilangan indeks terbesar print count (>branch) print >branchXY print >branchX,GY (( print ; (( print nothing (( print !edan

.ara lain untuk menginisialisasi array adalah dengan konstruksi array array(). 9ilai dikirimkan kedalam array yang akan diberikan. >branch ? array(3-emarang3$ 3-urabaya3$ 3!edan3)4 print >branchX,Y4 (( print !edan 7ika user ingin mengesampingkan indeks secara de)ault$ operator (?1) dapat digunakan untuk memberikan indeks spesi)ik untuk elemen array. Pada contoh sebelumnya >branch memiliki tiga elemen dengan indeks E$ 1$ dan ,. jika user menginginkan array dengan basis satu (indeks dimulai dari 1$ ,$ ;$ ...)$ maka dapat dituliskan dengan menggunakan operator (?1). >branch ? array(1 ?1 3-emarang3$ 3-urabaya3$ 3!edan3)4 >city ? array(3-olo3$ M ?1 3[resik3$ 38rastagi3)4 print >branchX;Y4 (( print !edan print >cityX\Y4 (( print 8rastagi

\. Uorm di PHP
.ontoh Uorm ' 0html1 0body1 0)orm action?3welcome.php3 method?3post31 9ame' 0input type?3text3 name?3name3 (1 #ge' 0input type?3text3 name?3age3 (1 0input type?3submit3 (1 0()orm1 0(body1 0(html1

.ontoh halaman H !" di atas mengandung dua )ield input dan sebuah tombol submit. &etika user mengisi )orm dan mengklik tombol submit$ data )orm akan dikirim ke )ile. Uile 3welcome.php3 ' 0html1 0body1 *elcome 02php echo >BP6- X3name3Y4 21.0br (1 5ou are 02php echo >BP6- X3age3Y4 21 years old. 0(body1 0(html1 &eluaran dari skrip tersebut adalah ' *elcome 7ohn. 5ou are ,\ years old. +ntuk mengambil data )orm di PHP digunakan variabel >B[@ atau >BP6- .

Anda mungkin juga menyukai