Anda di halaman 1dari 41

1.

Pendahuluan
Website dapat dibedakan menjadi dua yaitu Web Statis dan Web Dinamis. Web
Statis adalah web yang berisi informasi-informasi yang bersifat statis (tetap),
sedangkan Web Dinamis adalah web yang menampilkan informasi yang bersifat
dinamis (berubah-ubah) dan dapat saling berinteraksi dengan user.
Biasanya untuk web statis yang ditonjolkan adalah sisi tampilan yang banyak
mengandung grafis sehingga untuk meranang web statis tidak diperlukan
kemampuan pemrograman yang handal. !ang dibutuhkan hanya kemampuan
design grafis"web dan ita rasa seni belaka. Sedangkan untuk web dinamis yang
banyak ditonjolkan adalah pengolahan data sehingga dibutuhkan kemampuan dalam
pemrograman web.
#da dua jenis pemrograman web, yaitu Server Side Programming dan Client Side
Programming. $ada Ser%er Side $rogramming, semua sintaks dan perintah program
yang diberikan akan dijalankan"diproses di Web Server, kemudian hasilnya
dikirimkan ke browser pengguna dalam bentuk &'() biasa. Sehingga pengguna
tidak dapat melihat kode asli yang ditulis dalam bentuk ser%er side programming
tersebut. !ang tergolong dalam ser%er side programming seperti* +,-"$erl, #ti%e
Ser%er $ages, .a%a Ser%er $age, $&$, +old/ussion dan lain-lain.
Sebaliknya, pada +lient Side $rogramming semua sintaks dan perintah program
dijalankan di web browser, sehingga ketika lient meminta dokumen yang
mengandung sript, sript tersebut akan diambil dari web ser%er kemudian
dijalankan di web browser yang bersangkutan. +ontoh dari lient side programming
seperti* .a%aSript, 0bSript, &'().
2. Pengenalan PHP
$&$ merupakan singkatan dari 1$&$* &yperte2t $reproessor1, bahasa sripting
yang menyatu dengan &'() dan dijalankan pada serverside. #rtinya semua sintaks
yang kita berikan akan sepenuhnya dijalankan pada ser%er sedangkan yang
dikirimkan ke browser hanya hasilnya saja. 3etika seorang pengguna internet
membuka suatu situs yang menggunakan fasilitas ser%er side sripting $&$, maka
terlebih dahulu ser%er yang bersangkutan akan memproses semua perintah $&$ di
ser%er lalu mengirimkan hasilnya dalam format &'() ke web ser%er pengguna
internet tadi. Sehingga kode asli yang ditulis dengan $&$ tidak terlihat di browser
pengguna.
$&$ merupakan software yang open soure bebas. .adi anda dapat merubah
source code dan mendistribusikan seara bebas dan gratis. $&$ juga dapat berjalan
lintas platform, yaitu dapat digunakan dengan sistem operasi (Windows dan )inu2)
dan web ser%er apapun (misalnya* $WS, --S, #pahe dll).
Hubungan PHP dengan HTML
&alaman web biasanya disusun dari kode-kode html yang disimpan dalam sebuah
file berekstensi .html. /ile html ini dikirimkan oleh ser%er (atau file) ke browser,
kemudian browser menerjemahkan kode-kode tersebut sehingga menghasilkan
suatu tampilan yang indah. )ain halnya dengan program php, program ini harus
diterjemahkan oleh web-ser%er sehingga menghasilkan kode html yang dikirim ke
browser agar dapat ditampilkan. $rogram ini dapat berdiri sendiri ataupun disisipkan
di antara kode-kode html sehingga dapat langsung ditampilkan bersama dengan
kode-kode html tersebut. $rogram php dapat ditambahkan dengan mengapit
program tersebut di antara tanda 45 dan 56. 'anda-tanda tersebut biasanya disebut
tanda untuk esaping (kabur) dari kode html. /ile html yang telah dibubuhi program
php harus diganti ekstensi-nya menjadi .php atau .php7.
$&$ merupakan bahasa pemograman web yang bersifat ser%er-side
&'()8embedded sripting, di mana sript-nya menyatu dengan &'() dan berada
si ser%er. #rtinya adalah sintaks dan perintah-perintah yang kita berikan akan
sepenuhnya dijalankan di ser%er tetapi disertakan &'() biasa. $&$ dikenal sebgai
bahasa sripting yang menyatu dengan tag &'(), dieksekusi di ser%er dan
digunakan untuk membuat halaman web yang dinamis seperti #S$ (ati%e Ser%er
$ages) dan .S$ (.a%a Ser%er $ages).
Sejarah PHP
$&$ pertama kali dibuat oleh 9asmus )erdroft, seorang programmer +. Semula
$&$ digunakannya untuk menghitung jumlah pengunjung di dalam webnya.
3emudian ia mengeluarkan $ersonal &ome $age 'ools %ersi :.; seara gratis. 0ersi
ini pertama kali keluar pada tahun :<<=. -sinya adalah sekumpulan sript $>9) yang
dibuatnya untuk membuat halaman webnya menjadi dinamis. 3emudian pada
tahun:<<? ia mengeluarkan $&$ %ersi @.; yang kemampuannya telah mampu
mengakses database dan dapat terintegrasi dengan &'().
$ada tahun :<<A tepatnya pada tanggal ? .uni :<<A keluarlah $&$ %ersi 7.; yang
dikeluarkan oleh 9asmus sendiri bersama kelompok pengembang softwarenya.
0ersi teranyar yaitu $&$ B.; keluar pada tanggal @@ (ei @;;; merupakan %ersi yang
lebih lengkap lagi dibandingkan dengan %ersi sebelumnya. $erubahan yang paling
mendasar pada $&$ B.; adalah terintegrasinya Cend >ngine yang dibuat oleh Cend
Suraski dan #ndi ,utmans yang merupakan penyempurnaan dari $&$7 sripting
engine. !ang lainnya adalah build in &''$ session, tidak lagi menggunakan library
tambahan seperti pada $&$7. 'ujuan dari bahasa sripting ini adalah untuk
membuat aplikasi-aplikasi yang dijalankan di atas teknologi web. Dalam hal ini,
aplikasi pada umumnya akan memberikan hasil pada web browser, tetapi prosesnya
seara keseluruhan dijalankan web ser%er.
Kelebihan PHP
3etika e-ommere semakin berkembang, situs-situs yang statispun semakin
ditinggalkan 3arena dianggap sudah tidak memenuhi keinginan pasar karena situs
tersebut harus tetap dinamis selama setiap hari. $ada saat ini bahasa $>9) dan
+,- sudah jauh ketinggalan jaman sehingga sebagian besar designer web banyak
beralih ke bahasa ser%er-side sripting yang lebih dinamis seperti $&$.
Seluruh aplikasi berbasis web dapat dibuat dengan $&$. Damun kekuatan yang
paling utama $&$ adalah pada konekti%itasnya dengan system database di dalam
web. Sistem database yang dapat didukung oleh $&$ adalah *
:. Erale
@. (ySF)
7. Sybase
B. $ostgreSF)
=. dan lainnya
$&$ dapat berjalan di berbagai system operasi seperti windows <A"D',
GD-H")-DGH, solaris maupun maintosh.
$&$ merupakan software yang open soure yang dapat anda download seara
gratis dari situs resminya yaitu http*""www.php.net, ataupun dari situs-situs yang
menyediakan software tersebut seperti di ftp*""gerbang.he.itb.a.id.
Software ini juga dapat berjalan pada web ser%er seperti $WS ($ersonal Web
Ser%er), #pahe, --S, #E)Ser%er, fhttpd, phttpd dan sebagainya. $&$ juga
merupakan bahasa pemograman yang dapat kita kembangkan sendiri seperti
menambah fungsi-fungsi baru.
3eunggulan lainnya dari $&$ adalah $&$ juga mendukung komunikasi dengan
layanan seperti protool -(#$, SD($, DD'$, $E$7 bahkan &''$.
$&$ dapat diinstal sebagai bagian atau modul dari apahe web ser%er atau sebagai
+,- sript yang mandiri. Banyak keuntungan yang dapat diperoleh jika
menggunakan $&$ sebagai modul dari apahe di antaranya adalah *
:. 'ingkat keamanan yang ukup tinggi
@. waktu eksekusi yang lebih epat dibandingkan dengan bahasa pemograman web
lainnya yang berorientasi pada ser%er-side sripting.
7. #kses ke system database yang lebih fleksibel. seperti (ySF).
#dapun kelebihan-kelebihan dari $&$ yaitu*
(udah dibuat dan berkeepatan tinggi
$&$ dapat berjalan lintas platform, yaitu dapat berjalan dalam sistem operasi
dan web ser%er apapun.
Dapat digunakan seara gratis.
'ermasuk bahasa yang embedded, yakni dapat diletakkan dalam tag &'().
'ermasuk ser%er side programming, sehingga kode asli"soure ode $&$ tidak
dapat dlihat di browser pengguna, yang terlihat hanya kode dalam format &'().
Dapat memanfaatkan sumber-sumber aplikasi yang dimiliki oleh ser%er, seperti
misalnya untuk keperluan database connection. $&$ dapat melakukan koneksi
dengan berbagai database seperti (ySF), Erale, Sybase, mSF), Solid,
,eneri EDB+, $ostgres SF), dBase, Diret (S-SF), 0elois, -B( DB@,
-nterbase, /rontbase, >mpress, dan semua database yang mempunyai profider
EDB+ seperti misalnya (S #ess dan lain-lain.
$&$ dapat melakukan semua aplikasi program +,-, seperti mengambil nilai
form, menghasilkan halaman web yang dinamis, mengirimkan dan menerima
cookies.
$&$ juga mendukung komunikasi dengan layanan lain melalui protokol -(#$,
SD($, DD'$, $E$7 dan &''$ dan lainnya.
3. Penulisan Script PHP
$astikan web ser%er dan skrip $&$ anda telah berjalan dengan baik sebelum anda
memulai pemrograman $&$. Gntuk membuat web dengan sript $&$, ukup anda
persiapkan editor teks.
/ungsi-fungsi yang ada di $&$ uncase sensitive, tetapi %ariabelnya case sensitive
(membedakan huruf besar dan keil). Sript $&$ diawali dengan tanda lebih keil
( 4 ) dan diakhiri dengan tanda lebih besar ( 6 ). #da tiga ara untuk menuliskan
sript $&$ yaitu*
<?
Script PHP
?>
<?php
Script PHP
?>
<script language=php>
Script PHP
</script>
&al-hal yang harus diperhatikan dalam penulisan sript php, yaitu*
Sript $&$ harus disimpan dengan ekstensi PHP. /ormat penulisannya adalah
namafile.php, atau namafile.php3 atau namafile.php4.
Setiap instruksi dipisahkan oleh tanda titik koma (IJK).
Setiap baris sript isi harus didahului pernyataan etak yang dibedakan menjadi
dua, yaitu Print dan Echo.
$enulisan komentar"comment didahului dengan /* dan diakhiri dengan */. #tau
diawali dengan tanda //. Sintaknya adalah sebagai berikut*
/* komentar */
// komentar
# komentar
3arakter adalah semua bentuk huruf, angka, spasi, tanda kontrol atau simbol
yang terdapat dalam tombol keyboard.
4. Variable
0ariabel digunakan untuk menyimpan data sementara dan nilainya bisa berubah-
ubah setiap kali program dijalankan. Dalam $&$ setiap nama %ariable diawali tanda
dollar (L) dan diikuti dengan nama %ariabelnya, tidak memandang data tersebut
apakah integer, real maupun string, $&$ otomatis akan mengkon%ersi data menurut
tipenya. (isalnya nama %ariable a dalam $&$ ditulis dengan $a. .enis suatu %ariable
ditentukan pada saat jalannya program dan tergantung pada konteks yang
digunakan. #turan penamaan %ariabel dalam $&$*
Diawali dengan tanda dolar (L)
$enamaan %ariabel bersifat ase sensiti%e
Dama %ariabel hanya bisa diawali dengan huruf atau garis bawah, baru dapat
diikuti dengan beberapa huruf atau angka maupun garis bawah yang panjangnya
tidak terbatas.
'idak boleh menggunakan tanda baa.
'idak boleh menggunakan reserved word $&$ seperti misalnya echo, print, dan
lain-lain.
0ariabel dalam $&$ tidak harus dideklarasikan terlebih dahulu sebelum digunakan.
+ontoh-ontoh penulisan %ariabel*
Benar Salah
L%ariabel L%arMabel
LNpilih L-pilih
Lte<7 L<7te
LiniNitu Lini-itu
contoh21.php
<html>
<head>
<title>Variabel dalam PHP</title>
<bod>
<?php
//!ariabel bertipe integer
"a=#$#%
//!ariabel bertipe real
"b=#&'$#%
//!ariabel bertipe string
"komentar=#Selamat (atang di PHP#%
echo )#*ilai !ariabel a adalah = "a <br>#+% //!ariabel bertipe integer
echo )#*ilai !ariabel b adalah = "b <br>#+% //!ariabel bertipe real
echo )#*ilai !ariabel komentar adalah = "komentar<br>#+% //!ariabel bertipe string
"hasil="a,"b%
echo )#Hasil -umlah a dan b adalah = "hasil <br>#+% //!ariabel bertipe double
"tgl = date)#d . /#+% //!ariabel bertipe tanggal
"nama = #S01 P234 5 0alang#%
"garis= #=====================================#%
echo #<p>#%
echo "garis'#<br>#%
echo "komentar' # (i 6ab #' "nama' #<br>7ela-ar dengan giat a'''' <br>#%
echo "garis'#<br>#%
echo #8anggal #'"tgl%
?>
!. "onstanta
3onstanta adalah %ariabel yang nilainya tetap.
Sintak*
(e9ine ):nama;konstanta<nilai;konstanta+%
+ontoh*
4html6
4head6
4"head6
4body6
45
Define (IkampusK,KS(3 $,9- 7 (alangK)J
>ho kampusJ
56
4"body6
4"html6
#. $%pe &ata
$&$ mengenal B tipe data skalar dan @ tipe data ompound. 'ipe data skalar adalah
tipe data integer, floating point, string dan boolean. Sedangkan @ tipe data ompound
adalah array dan object. yaitu*
a. -nteger, tipe data yang menyatakan bilangan bulat.
b. /loating point"double, tipe data yang menyatakan bilangan real"peahan
. String, menyatakan tipe data teks yang berisi kumpulan beberapa karakter
d. Boolean, tipe data logika yang memiliki nilai true dan false.
e. #rray adalah tipe data terstruktur yang berguna untuk menyimpan sejumlah data
yang bertipe sama.
f. Ebjek, merupakan instansiasi dari suatu lass.
'. "onversi $%pe &ata
$&$ menyediakan perintah untuk melakukan kon%ersi tipe data ke tipe data yang lain
dengan menggunakan perintah sebagai berikut*
settype(value,datatype)
dimana*
( value adalah nilai yang akan dikon%ersikan
( datat%pe adalah tipe data yang dikon%ersikan
$erhatikan ontoh berikut*
contoh22.php
<html>
<head>
<title>'== 1on!ersi 8pe (ata =='</title>
</head>
<bod>
<9ont 9ace=tahoma si>e=&>
<?php
"baar=#$??'@@ 3upiah#%
print )#8ipe (ata String = "baar <br> An#+%
settpe)"baar<#double#+%
print )#8ipe (ata (ouble = "baar <br> An#+%
settpe)"baar<#integer#+%
print )#8ipe (ata 4nteger = "baar <br> An#+%
?>
</bod>
</html>
). *perator
Eperator adalah simbol"tanda yang digunakan untuk melakukan operasi-operasi
matematis atau operasi string. Sedangkan operand adalah data yang dioperasikan
atau dimanipulasi. Eperator dapat dikelompokkan dalam B kategori, yaitu*
a. Eperator #ritmatika"#rithmeti Eperator
b. Eperator $enugasan"#ssignment Eperator
. Eperator $embanding"+omparison Eperator
d. Eperator )ogika")ogial Eperator
Operator Aritmatika/Arithmetic Operator
#dalah operator yang digunakan dalam operasi matematika. !ang termasuk
operator ini adalah*
Operator Operasi
, Pen-umlahan
B Pengurangan
* Perkalian
/ Pembagian
C 0odulus
,, 4ncrement D
BB (ecrement D
Operator Penugasan/Assignment Operator
Eperator penugasan berfungsi untuk memberikan nilai ke suatu %ariabel atau
%ariabel ke %ariabel. Simbol operator ini adalah Isama denganK (8). Daftar
operator penugasan seperti dalam tabel berikut*
*perator +ungsi ,ontoh
,=
Entuk menambah nilai !ariabel disebelah
kiri dengan nilai sebelah kanan
F,=$%
F=F,$%
B=
Entuk mengurangi nilai !ariabel disebelah
kiri dengan nilai disebelah kanan
FB=$%
F=FB$%
'=
Entuk melakukan operasi penggabungan
)concatenation+ antara !ariabel disebelah
kiri dengan nilai disebelah kanan
F'=php%
F=F'php%
/=
Entuk membagi nilai !ariabel di sebelah
kiri dengan nilai sebelah kanan
F/=$%
F=F/$%
C=
Sisa hasil bagi antara nilai !ariabel
disebelah kiri dengan nilai disebelah kanan
GC=$%
F=FC$%
H=
Entuk melakukan operasi logika I*(
antara nilai !ariabel disebelah kiri dengan
nilai disebelah kanan
GH=$%
F=FH$%
J=
Entuk melakukan operasi logika K3 antara
nilai !ariabel disebelah kiri dengan nilai
disebelah kanan
GJ=$%
F=FJ$%
L=
Entuk melakukan operasi logika GK3
antara nilai !ariabel disebelah kiri dengan
nilai disebelah kanan
GL=$%
F=FL$%
Operator Pembanding/omparison Operator
Eperator ini disebut juga operator relasional, yaitu operator yang digunakan
untuk membandingkan antara dua atau lebih operand (nilai, %ariabel, atau
pernyataan) dan menghasilkan nilai $rue atau +alse. Eperator-operator yang
termasuk operator pembanding adalah*
*perator +ungsi ,ontoh
== Sama (engan
"a=="b%
true, -ika "a sama
dengan "b
=== 4dentik
"a==="b%
true, -ika "a sama
dengan "b< dan keduana
mempunai tipe data
ang sama%
M= atau
<>
8idak Sama (engan
"aM="b% atau
"a<>"b%
true, -ika "a tidak sama
dengan "b%
M== 8idak 4dentik
"aM=="b%
true, -ika "a tidak sama
dengan "b< atau
keduana tidak memiliki
tipe data ang sama%
< 1urang (ari
"a<"b%
true, -ika "a kurang dari
"b%
> 6ebih (ari
"a>"b%
true, -ika "a lebih besar
dari "b%
<= 1urang (ari atau Sama (engan
"a<="b%
true, -ika "a kurang dari
atau sama dengan "b%
>= 6ebih (ari atau Sama (engan
"a>="b%
true, -ika "a lebih dari
atau sama dengan "b%
Operator Logika/Logical Operator
Eperator logika digunakan untuk membandingkan dua atau lebih pernyataan dan
menghasilkan nilai true atau -alse. Eperator logika sering digunakan pada
struktur kendali. !ang termasuk operator logika adalah*
*perator +ungsi ,ontoh
HH atau
I*(
Kperasi 6ogika I*(
"a HH "b%
true, -ika "a dan "b bernilai true
JJ atau K3 Kperasi 6ogika K3
"a JJ "b% atau
"a or "b%
true, -ika "a atau "b< salah satuna
bernilai true%
GK3 Kperasi 6ogika GK3
"a For "b%
true, -ika "a atau "b bernilai true dan
salah satuna bernilai false%
M Kperasi 6ogika *K8
M"a%
true, -ika "a tidak benilai true%
Operator !it"ise
Eperator bitwise digunakan untuk operasi bilangan biner. Eperator-operator
yang termasuk operator bitwise adalah*
*perator .rti
& Kperator I*(
J Kperator K3
L Kperator GK3
N Kperator *K8
<< Kperator Shi9t 6e9t )geser kiri+
>> Kperator Shi9t 3ight )geser kanan+
Operator #ncrement/$ecrement
$re"$ost inrement dan derement masing-masing adalah penambahan dan
pengurangan satu. #pabila operator diletakkan sebelum %ariabel, misal OOLi atau
--i maka nilai Li akan ditambahkan atau dikurangkan : sebelum keseluruhan
operasi dalam ekspresi dikerjakan dan sebaliknya apabila operator diletakkan
setelah %ariabel, misal LiOO atau Li-- maka nilai Li akan ditambah atau dikurangi
: setelah operasi dalam ekspresi dikerjakan.
*perator *perasi Penggunaan
OO $re"$ost -nrement OOLa atau LaOO
--
$re"$ost
Derement
--Lb atau Lb--
Operator String
&anya ada satu operator string, yaitu operator concatenation /.0, yakni
menggabungkan dua buah atau lebih string.
+ontoh
<?php
"a = :Hallo%
"b = "a'Selamat (tang di PHP%
//"b berisikan :Hallo Selamat datang di PHP
?>
Kedudukan Operator
Setiap operator mempunyai kedudukan (operator preedene) dan prioritas
masing-masing yang digunakan untuk menentukan operator manakah yang akan
dieksekusi terlebih dahulu bila dalam sebuah pernyataan terdapat dua atau lebih
operator. +ontoh, misalnya ada persamaan matematika 28@O=PQ. (aka nilai 2
adalah 7Q bukan B<. &al ini karena kedudukan operator perkalian lebih tinggi dari
pada operator penjumlahan sehingga = harus dikalikan terlebih dahulu dengan Q,
baru dijumlah dengan @J bukan @ ditambah = baru dikali Q. 3edudukan operator-
operator tersebut seperti terlihat pada tabel berikut*
Prioritas *perator
Tertinggi )+< OP
N< M< ,,< BB< "< H
*< ?< C
,< B
<>< <=< >=
==< ===< M=< M==
H
L
M
HH
JJ
=< ,=< B=< *=< /=< H=< J=< L=< '=
I*( )HH+
GK3 )JJ+
Terendah K3
1. &asar(dasar Stru2tur Progra3 4nput(*utput
Struktur yang paling dasar dalam sebuah pemrograman adalah struktur input-output.
-nput merupakan interfae untuk memasukkan data, kemudian data di olah dan
selanjutnya hasil pengolahan ditampilkan pada komponen output.
#nput%Output Sederhana
Sebagai ontoh, kita akan membuat program sederhana untuk menghitung luas
segitiga berdasarkan flowhart berikut*
contoh23.php
<html>
<head>
<title>'== 6atihan membuat input
Kutput =='</title>
</head>
<bod>
<9ont 9ace=!erdana si>e=&>
<?
//0endeklarasikan data input
"alas=&?%
"tinggi=$%
//Proses hitung luas segitiga
"luassegitiga=?'$*"alas*
"tinggi%
//Qetak hasil
echo #7esar Ilas = "alas <br>#%
echo #7esar 8inggi = "tinggi
<br>#%
Input Proses Output
(ulai
-nput #las
-nput 'inggi
$roses &itung )uas Segitiga
)uas8;,= P #las P 'inggi
Eutput
+etak )uas
Selesai
echo #6uas Segi 8iga Idalah = "luassegitiga<br>#%
?>
</bod>
</html>
#nput%Output dengan &orm
Dengan memanfaatkan form yang terdapat dalam &'(), kita dapat membuat
program yang lebih interaktif. Sebagai ontoh, program di ontoh @.7 akan modifikasi
sehingga lebih interaktif.
contoh24.php
<html>
<head>
<title>'== 0enghitung 6uas Segi 8iga =='</title>
</head>
<bod>
<9ont 9ace=!erdana>
<center><h5><u>0enghitung 6uas Segitiga</u></h5></center>
<9orm action=luassegitiga'php method=post>
<table align=center bgcolor=#cedadc bordercolor=#c9dbdd cellspacing=$>
<tr>
<td>0asukkan Ilas</td>
<td>=</td>
<td><input tpe=teFt name=alas si>e=D?></td>
</tr>
<tr>
<td>0asukkan 8inggi</td>
<td>=</td>
<td><input tpe=teFt name=tinggi si>e=D?></td>
</tr>
<tr>
<td colspan=5 align=center><input tpe=submit !alue=hitung></td>
</tr>
</table>
</9orm>
</bod>
</html>
3etika tombol &-'GD, diklik, program memanggil file luassegitiga'php (perhatikan
pada tag <9orm action=luassegitiga'php method=post>) yang akan digunakan untuk
menampung hasil perhitungan. (aka buat lagi file dan beri nama luassegitiga'php
dan simpan dalam satu direktori.
+ile luassegitiga.php
<html>
<head>
<title>'== Hasil Perhitungan 6uas Segi 8iga =='</title>
</head>
<bod>
<9ont 9ace=!erdana>
<center>
<h5><u>6uas Segitiga</u></h5>
</center>
<9orm action=contoh&;R'php method=post>
<?
"luas=?'$*"alas*"tinggi%
echo #<table align=center bgcolor=#cedadc bordercolor=#c9dbdd cellpadding=?>#%
echo #<tr>#%
echo #<td>Ilas</td>#%
echo #<td>=</td>#%
echo #<td>"alas</td>#%
echo #</tr>#%
echo #<tr>#%
echo #<td>8inggi</td>#%
echo #<td>=</td>#%
echo #<td>"tinggi</td>#%
echo #</tr>#%
echo #<tr>#%
echo #<td>6uas Segi 8iga</td>#%
echo #<td>=</td>#%
echo #<td>"luas</td>#%
echo #</tr>#%
echo #<tr>#%
echo #<td colspan=5 align=center><input tpe=submit !alue=ulang></td>#%
echo #</tr>#%
echo #</table>#%
?>
</9orm>
</bod>
</html>
&asilnya adalah*
(ulai
-nput Dilai
3ompeten
Selesai
#pakah nilai 6
Q;
'
!
dan tampilan setelah tombol hitung di-klik adalah*
15. Stru2tur "ontrol/"endali
State3ent #&
3onstruksi -/ digunakan untuk melakukan eksekusi suatu statement seara bersyarat
atau sesuai dengan kondisi tertentu. Statement -/ dibagi dua, statement ! tunggal
dan statement ! majemuk. +ara penulisan statement -/ tunggal adalah sebagai
berikut*
i9 )kondisi+
O
statement%
P
+ontoh*
contoh2!.php
<html>
<head>
<title>'== Qontoh Seleksi 1ondisi
=='</title>
</head>
<bod>
<9ont 9ace=!erdana si>e=&>
<9orm action=nilai'php
method=post>0asukkan *ilai =
<input tpe=teFt name=nilai si>e=&><p>
<input tpe=submit !alue=Proses>
</9orm>
</bod>
</html>
Gntuk memproses file diatas, buat sript berikut dan simpan dengan nama nilai.php
+ile nilai.php
<html>
<head>
<title>'== Qontoh Seleksi 1ondisi
=='</title>
</head>
<bod>
<9ont 9ace=!erdana si>e=&>
<?
echo #*ilai E-ian anda = "nilai<br>#%
i9 )"nilai>@?+
O
echo #Inda 1ompeten<br>#%
P
?>
</bod>
</html>
Gntuk statement -/ majemuk atau dikenal dengan -/ ... >)S>, digunakan jika
terdapat lebih dari satu kondisi yang akan dikerjakan. Sintaks struktur -/ ... >lse
adalah sebagai berikut*
i9 )sarat+
O
statement
P
else
O
statement lain
P
atau*
i9 )sarat pertama+
O
statement pertama
P
elsei9 )sarat kedua+
O
statement kedua
P
else
O
statement lain
P
Sebagai ontoh, kita modifikasi file nilai.php pada ontoh @N= dan simpan dengan
nama nilai2.php
contoh2#.php
<html>
<head>
<title>'== Qontoh Seleksi
1ondisi =='</title>
</head>
<bod>
<9ont 9ace=!erdana si>e=&>
<9orm action=nilai&'php
method=post>
0asukkan *ilai =
<input tpe=teFt name=nilai
si>e=&><p>
<input tpe=submit !alue=Proses>
</9orm>
</bod>
</html>
+ile nilai2.php6
<html>
<head>
<title>'== Qontoh Seleksi 1ondisi
=='</title>
</head>
<bod>
<9ont 9ace=!erdana si>e=&>
<?
echo #*ilai E-ian anda = "nilai<br>#%
i9 )"nilai<$?+
O
(ulai
-nput Dilai
)ulus dan 'idak
3ompeten
Selesai
'idak )ulus
'
!
#pakah nilai 4 =;
#pakah nilai 4 Q;
)ulus dan
3ompeten
'
!
echo #Inda 8idak 6ulus<br>#%
P
elsei9 )"nilai<@?+
O
echo #Inda 6ulus 8api 8idak 1ompeten<br>#%
P
else
O
echo #Selamat Inda 6ulus dan 1ompeten#%
P
?>
</bod>
</html>
State3ent S'#TH
Statement SW-'+& digunakan untuk membandingkan suatu %ariable dengan
beberapa nilai serta menjalankan statement tertentu jika nilai %ariable sama dengan
nilai yang dibandingkan. $enggunaan statement SW-'+& hampir sama dengan
penggunaan statement -/, sehingga bisa digunakan sebagai pengganti statement -/.
Gntuk 3eluar dari suatu blok statement dalam statement swith, dapat mengunakan
perintah B9>#3
Struktur Swith adalah sebagai berikut*
sSitch )!ariable+
case nilai=
statement
case nilai=
statemant
case nilai=
statement
contoh2'.php
<html>
<head>
<title>'== Struktur 1endali SSitch=='</title>
</head>
<bod>
<9ont 9ace=!erdana si>e=&>
<?
"dino=date)#l#+%
sSitch)"dino+
O
case #0onda#=
"hari=#Senin#%break%
case #8uesda#=
"hari=#Selasa#%
break%
case #Tednesda#=
"hari=#3abu#%
break%
case #8hursda#=
"hari=#1amis#%
break%
case #.rida#=
"hari=#Uumat#%
break%
case #Saturda#=
"hari=#Sabtu#%
break%
de9ault=
"hari=#0inggu#%
P
echo #<h5>Hari ini adalah hari <u>"hari</u></h5>#%
?>
</bod>
</html>
$ugas
:. (embuat program penghitung disount
$rogram ini digunakan untuk mengetahui apakah pembeli dapat diskon atau
tidak. Besar diskon tersebut mengikuti aturan sebagai berikut* .ika jumlah bayar
=;.;;; dapat diskon =R, jika jumlah bayar :;;.;;; dapat diskon :;R, dan jika
jumlah bayar =;;.;;; dapat diskon =;R. Selain kreteria tersebut, diskonnya
adalah ;R.
Gntuk mengerjakan program tersebut, perhatikan flowhart berikut*
Dari flowhart tersebut silahkan sript programnya.
(ulai
Diskon8;.=P
.umlahBaya
r
'
!
.umlahBaya
r =;;;;;
(asukkan
.umlah
Bayar
.umlahBaya
r =;;;;
.umlahBaya
r :;;;;;
Diskon8;.:P
.umlahBaya
r
'
!
Diskon8;.;=
P.umlahBay
ar
'
Diskon8;
!
Selesai
'otalBayar8
.umlahBayar-
Diskon
@. (embuat $rogram kalkulator sederhana
$rogram yang akan buat ini adalah program untuk melakukan beberapa operasi
aritmatika, yaitu penjumlahan, pengurangan, perkalian dan pembagian. Setiap
operasi yang dilakukan, program akan meminta masukan nilai dua operand yang
akan dihitung dalam hal ini adalah # dan B. $rogram juga akan meminta
masukan dari pemakai untuk memilih operasi apa yang akan dilakukan.
$erhatikan flowhart berikut*
Dari flowhart tersebut, silahkan buat programmnya.
(ulai
+ 8 # O B
'
!
$ilihan8
.umlah
(asukkan
Dilai # dan B
$ilihan8
3ali
$ilihan8
3urang
+ 8 # - B
'
!
+ 8 # P B
'
+ 8 # " B
!
Selesai
&asil #dalah 8 +
Silahkan
$ilih
Eperasi
#pa5
Sekarang buat satu lagi program yang digunakan untuk memproses hasil setelah
ada penekenan tombol hitung. /ile tersebut simpan dengan nama operasi.php.
11. Perulangan /looping0
State3ent 'H#LE
$ernyataan ini digunakan untuk mengulangi sebuah perintah sampai jumlah atau
kondisi tertentu terpenuhi. Bentuk dasar dari statement While adalah sebagai berikut*
Shile )sarat+
O
statement
P
#rti dari statemant While adalah memberikan perintah untuk menjalankan statement
dibawahnya seara berulang-ulang, selama syaratnya terpenuhi.
$erhatikan ontoh@NA. $ada ontoh tersebut, program digunakan untuk menari
bilangan genap dari @ sampai dengan batas tertentu sesuai dengan masukan yang
diberikan.
contoh2).php
<html>
<head>
<title>'== Program 0encari 7ilangan 2enap =='</title>
</head>
<bod>
<9ont 9ace=!erdana si>e=&>
<9orm>0encari 7ilangan 2enap 7erapa =
<input tpe=teFt name=genap><br><br>
<input tpe=submit !alue=#Qari 7ilangan 2enap#>
</9orm>
<?php
i9 )isset)"genap++
O
"bilgen=int!al)"genap+%
echo #7ilangan 2enap dari & s/d "bilgen adalah = #%
echo #<br>#%
"gen=?%
Shile )"gen<"genap+
O
"gen="gen,&%
echo #"gen#%
echo # #%
P
P
?>
</bod>
</html>
(ulai
Lgenap8LgenapO@
'
!
Lgenap 4 Lbatas
(asukkan
Batasnya5
Selesai
Bilanga genap dari @ s"d batas
adalah *Lgenap
Lgenap8;J
State3ent &O(
$erintah ini digunakan untuk mengulangi perintah dengan jumlah pengulangan yang
sudah diketahui. +ara penulisan statement /E9 adalah sebagai berikut*
9or )*ilai;ISal% Sarat% Qounter+
3eterangan*
DilaiN#wal * Batas awal perulangan
Syarat * Syarat perulangan
+ounter * .umlah kenaikan yang akan ditambakan kepada batas awal
hingga menapai batas akhir
contoh21.php
<html>
<head>
<title>6atihan Perulangan dengan .or</title>
</head>
<bod>
8anggal =
<select name=tanggal>
<option !alue=? selected>8anggal
<?php
//7entuk Pilihan tanggal D sampai dengan 5D
9or )"i=D%"i<5&%"i,,+
echo #<option !alue="i>"i#%
?>
</option>
</select>
</bod>
</html>
Hasilna adalah =
Didalam struktur perulangan, terdapat beberapa pernyataan yang digunakan untuk
merubah jalannya eksekusi terhadap proses looping yang dilakukan. $ernyataan-
pernyataan tersebut adalah*
brea2, pernyataan ini digunakan untuk keluar dari suatu perulangan.
Sintaknya adalah*
break)n+
Dengan n adalah parameter opsional yang nilainya digunakan jika terdapat
nested loop. $ernyataan brea2 akan mengikuti urutan tingkatan dimulai dari
tingkat paling dalam menuju tingkat terluar.
,ontinue, pernyataan ini digunakan untuk melewati proses iterasi dan
melanjutkan dengan iterasi berikutnya.
78it, pernyataan ini digunakan untuk mengakhiri seluruh proses eksekusi yang
sedang berjalan.
13. Procedure dan +ungsi
Dalam pembuatan program sering kali dibutuhkan beberapa perintah yang digunakan
berulang kali. &al ini dapat dihindari dengan subrutin. Subrutin adalah sekumpulan
perintah yang diberi nama dan dapat dipanggil sewaktu-waktu. Dalam pemrograman
terdapat dua subrutin, yaitu prosedur dan fungsi. Standar penulisan fungsi adalah*
9unction nama;9ungsi)argumen+
O
kode perintah
S
ontoh*
9unction operasi;-umlah)"F<"+
O
>=F,%
echo )>+%
P
Beberapa hal yang perlu diperhatikan dalam pembuatan fungsi, yaitu*
Dama fungsi tidak boleh sama dengan nama-nama fungsi yang sudah ada dalam
$&$.
&anya boleh terdiri dari huruf, angka dan garis bawah
'idak boleh diawali dengan angka
contoh215.php
<html>
<head>
<title>'== 6atihan 0embuat
.ungsi =='</title>
</head>
<bod>
<9ont 9ace=tahoma si>e=&>
<?
//.ungsi g dipanggil
9unction operasi;-umlah)"a<"b+
O
"c="a,"b%
echo )#Hasil "a , "b = "c#+%
P
//Program Etama
//Entuk 0emanggil .ungsi
operasi;-umlah)V<5+%
?>
</bod>
</html>
(E)*#(E
/untion 9eTuire digunakan untuk membaa nilai %ariable dan fungsi-fungsi dari
sebuah file lain.
+ara penulisan funtion 9eTuire adalah*
reWuire)nama9ile+%
/untion 9eTuire ini tidak dapat dimasukkan diadalam suatu struktur looping
misalnya while atau for. 3arena hanya memperbolehkan pemangggilan file yang
sama tersebut hanya sekali saja.
contoh211.php
<?php
"a=Saa sedang bela-ar PHP%
9unction tulistebal)"teks+
O
echo):<b>"teks</b>+%
P
?>
contoh212.php
<?php
reWuire):contoh&;DD'php+%
tulistebal):4ni adalah tulisan tebal+%
echo):<br>+%
echo)"a+%
?>
#+L*$E
/untion -nlude akan menyertakan isi suatu file tertentu. -nlude dapat diletakkan
didalam suatu looping misalkan dalam statement for atau while.
contoh213.php
<?
echo)#BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB<br>#+%
echo)#PHP adalah bahasa scripting<br>#+%
echo)#BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB<br>#+%
echo)#<br>#+%
?>
contoh214.php
<?php
9or )"b=D% "b<$% "b,,+
O
include)#contoh&;D5'php#+%
P
?>
&asilnya adalah*
14. +ungsi 9 +ungsi PHP
+ungsi String
/ungsi string digunakan memanipulasi"mengolah data string untuk berbagai maam
kebutuhan. Disini akan dibahas beberapa fungsi string yang sering digunakan dalam
membuat program aplikasi web. /ungsi-fungsi tersebut adalah*
.ddSlashes
Digunakan untuk menambahkan karakter bakslash ( U ) pada suatu string. &al ini
penting digunakan pada Tuery string untuk database, misalkan pada (ySF).
Beberapa karakter yang akan ditambahkan tanda bakslash adalah karakter
tanda petik satu ( V ), karakter petik dua ( I ), bakslash ( U ) dan karakter DG)).
Sintaks*
addslashes(string)
StripSlashes
Digunakan untuk menghilangkan karakter bakslash ( U ) pada suatu string.
Sintaks*
string stripslashes(string)
,r%pt
Digunakan untuk meng-enrypt dengan metode D>S suatu string. /ungsi ini
sering digunakan untuk mengaak string password sebelum disimpan dalam
database. Dalam penggunaan fungsi rypt ini dapat ditambahkan parameter
string VsaltW. $arameter VsaltW ini ditambahkan untuk menentukan basis
pengaakan. VSaltW string terdiri atas @ karakter. .ika VsaltW string tidak
ditambahkan pada fungsi rypt maka $&$ akan menentukan sendiri VsaltW string
tersebut seara aak.
Sintaks*
crypt(string [ , salt ] )
7cho dan Print
Digunakan untuk menetak"menampilkan isi suatu string"teks atau argumen ke
browser.
Sintaks*
echo( string argumen1, string argumen2 , .)
print( string argumen1, string argumen2 , .)
78plode
Digunakan untuk memeah-meah suatu string berdasarkan tanda pemisah
tertentu dan memasukkan hasilnya kedalam suatu %ariable array.
Sintaks*
explode(string pemisah , string [, int limit] )
+ontoh*
"namahari = :minggu senin selasa rabu kamis -umat sabtu%
"hari = eFplode): < "namahari+%
43plode
3egunaan fungsi ini adalah kebalikan daripada fungsi e2plode. /ungsi implode
digunakan untuk menghasilkan suatu string dari masing-masing elemen suatu
array. String yang dihasilkan tersebut dipisahkan oleh suatu string telah yang
ditentukan sebelumnya.
Sintaks*
iplode(string pemisah , array)
Print- dan Sprint
Digunakan untuk menampilkan output ke browser dengan format tertentu.
Sintaksnya adalah sebagai berikut*
Printf(forat[,arguen])
!print(forat[,arguen])
$arameter format selalu ditandai dengan karakter persen (R), kemudian diikuti
oleh karakter tertentu yang memberikan spesifikasi untuk memberikan hasil
dengan format tertentu. 3arakter pemberi spesifikasi tersebut adalah*
"ara2ter "eterangan
7
Irgumen diperlakukan sebagai integer dan ditampilkan sebagai
angka biner
Q
Irgumen diperlakukan sebagai integer dan ditampilkan sebagai
karakter dengan nilai ISQ44Bna
d
Irgumen diperlakukan sebagai integer dan ditampilkan sebagai
angka desimal
9 Irgumen diperlakukan sebagai double dan ditampilkan sebagai
angka 9loating point
o
Irgumen diperlakukan sebagai integer dan ditampilkan sebagai
bilangan oktal
s Irgumen diperlakukan dan ditampilkan sebagai string
F
Irgumen diperlakukan sebagai integer dan ditampilkan sebagai
angka heksadesimal )dengan huru9 kecil+
G
Irgumen diperlakukan sebagai integer dan ditampilkan sebagai
angka heksadesimal )dengan huru9 besar+
contoh21!.php
<html>
<head>
<title>'== 6atihan .ormat String =='</title>
</head>
<bod>
<9ont 9ace=!erdana si>e=&>
<?
"angkaD=@X'@Y%
"angka&=&5'5D%
"angka="angkaD,"angka&%
echo )"angka+%
echo )#<br>#+%
"9ormat=sprint9)#C?D'&9#<
"angka+%
echo)#"9ormat<br>#+%
"ear=DY@&%
"month=DD%
"da=Y%
"tanggal=sprint9)#C?&dB
C?&dBC?Rd#<"da<"month<
"ear+%
echo )"tanggal+%
?>
</bod>
</html>
#ngka didepan karakter IRK menunjukkan jumlah digit atau jumlah karakter yang
akan ditampilkan. .ika ada titik, menunjukkan jumlah angka dibelakang koma.
(isalnya, I%01.2fK menunjukkan bahwa bilangan tersebut ditampilkan sebagai
floating point dan harus ada dua angka dibelakang koma yang ditampilkan.
%02d menunjukkan bahwa bilangan tersebut ditampilkan sebagai integer dan
harus ada dua angka yang ditampilkan. .adi jika terdapat angka A, maka akan
diubah menjadi ;A.
Strip$ags
Digunakan untuk menghilangkan kode-kode tag &'() pada suatu string.
Sintaks*
striptags(string [, string tags yang tidak dihilangkan] )
Str:en
Digunakan untuk menghitung jumlah karakter suatu string.
Sintaks*
strlen(string)
StrPos
Digunakan untuk menari posisi suatu sub string pada suatu string. /ungsi ini
biasanya digunakan untuk menari suatu sub string didalam suatu string.
Sintaks*
strlen(string , sub string)
Str;epeat
Digunakan untuk mengulang isi suatu string.
Sintaks*
str"repeat(string , int jumlah perulangan)
Str;eplace
Digunakan untuk mengganti suatu string dengan string yang lain.
Sintaks*
!tr"replace(tercari,pencari,subyek)
Str;ev
Digunakan untuk membalik urutan suatu string.
Sintaks*
strre#(string)
StrStr< StriStr dan Str,hr
Digunakan untuk menari keberadaan suatu string di dalam string lain.
Sintaks*
strstr(tercari,pencari)
stristr(tercari,pencari)
strchr(tercari,pencari)
Str$o:o=er
Digunakan untuk merubah suatu string menjadi huruf keil (lowercase).
Sintaks*
strtolo$er(string)
Str$o>pper
Digunakan untuk merubah suatu string menjadi huruf besar (uppercase)
Sintaks*
strtoupper(string)
SubStr
Digunakan untuk mengambil suatu sub string dengan panjang tertentu dari suatu
string pada posisi tertentu pula.
Sintaks*
su%str(string, int posisi , int posisi)
+ontoh*
substr):abcde9g<?<5+% // mengasilkan string :abc
substr):abcde9g<5<&+% // menghasilkan string :de
SubStr,ount
Digunakan untuk menghitung jumlah sub string dalam suatu string
Sintaks*
su%str"count( string , string substring)
+ontoh*
substr;count):8his is a test<is+% // menghasilkan nilai &
>,+irst
Digunakan untuk mengganti karakter pertama pada suatu string menjadi huruf
besar.
Sintaks*
ucfirst(string)
>,?ords
Digunakan untuk mengganti karakter pertama pada setiap kata dalam suatu
string menjadi huruf besar.
Sintaks*
uc$ords(string)
+ungsi @ate3ati2a
!aitu fungsi-fungsi yang digunakan untuk memanipulasi bilangan-bilangan dalam
operasi matematis.
+ungsi $rigono3etri
/ungsi trigonometri adalah fungsi-fungsi yang berhubungan dengan ilmu
trigonometri, yaitu antara lain*
sin)sudut+< mencari nilai sinus sebuah sudut
cos)sudut+< mencari nilai cosinus sebuah sudut
tan)sudut+< mencari nilai tangen sebuah sudut
asin)sudut+< mencari nilai arcus sinus sebuah sudut
acos)sudut+< mencari nilai arcus cosinus sebuah sudut
atan)sudut+< mencari nilai arcus tangen sebuah sudut
deg&rad)a+< merubah besaran dera-at men-adi radian
rad&deg)a+< merubah besaran radian men-adi dera-at
Semua besar sudut yang diari harus dalam bentuk radian.
contoh21#.php
<html>
<head>
<title>'== .ungsiB9ungsi 8rigonometri =='</title>
</head>
<bod>
<h5><u>.ungsiB9ungsi 8rigonometri</u></h5><p>
<9ont 9ace=!erdana si>e=&>
<9orm>0asukkan sudut g dicari =
<input tpe=teFt name=sdt><br><br>
<input tpe=submit !alue=#Hitung#>
</9orm>
<?php
i9 )isset)"sdt++
O
"sudut=int!al)"sdt+%
"sudrad=deg&rad)"sudut+%
"sin=sin)"sudrad+%
"cos=cos)"sudrad+%
"tan=tan)"sudrad+%
"arcsin=asin)"sudrad+%
"arccos=acos)"sudrad+%
"arctan=atan)"sudrad+%
echo #Sudut "sudut sama
dengan "sudrad radian<br>#%
print9)#sin)"sudut+ =
C?D'R9<br>#<"sin+%
print9)#cos)"sudut+ =
C?D'R9<br>#<"cos+%
print9)#tan)"sudut+ =
C?D'R9<br>#<"tan+%
print9)#arc sin)"sudut+ =
C?D'R9<br>#<"arcsin+%
print9)#arc cos)"sudut+ =
C?D'R9<br>#<"arccos+%
print9)#arc tan)"sudut+ =
C?D'R9<br>#<"arctan+%
P
?>
</bod></html>
+ungsi Pang2at dan .lgorit3a
/ungsi-fungsi yang digunakan untuk perhitungan pangkat dan logaritma.
poS)"F<"+< mencari hasil dari "F
"
'
eFp)"F+< mencari nilai e
"F
log)"F+< mencari nilai dari logaritma "F
sWrt)"F+< mencari akar kuadrat "F'
+ungsi Base n
/ungsi yang digunakan untuk kon%ersi suatu bilangan ke bilangan berbasis n.
base;con!ert)F<<>+< mengubah bilangan F dari basis men-adi basis >'
decbin)F+< mengubah bilangan desimal ke bilangan biner
decheF)F+< mengubah bilangan desimal ke bilangan heksadesimal
decoct)F+< mengubah bilangan desimal ke bilangan oktal
bindec)F+< mengubah bilangan biner ke bilangan desimal
heFdec)F+< mengubah bilangan heksadesimal ke bilangan desimal
octdec)F+< mengubah bilangan oktal ke bilangan desimal
contoh21'.php
<html>
<head>
<title>'== .ungsiB9ungsi
8rigonometri =='</title>
</head>
<bod>
<h5><u>1on!ersi 7ilangan
</u></h5><p>
<9ont 9ace=!erdana si>e=&>
<9orm>
0asukkan bilangan g dicari =
<input tpe=teFt name=bil>
<br><br>
<input tpe=submit
!alue=#Qon!ert#>
</9orm>
<?php
i9 )isset)"bil++
O
"bilangan=int!al)"bil+%
"basecon!ert=base;con!ert)"bilangan<D?<5+%
"desbin=decbin)"bilangan+%
"desheF=decheF)"bilangan+%
"desoct=decoct)"bilangan+%
print9)#(esimal "bilangan dalam basis 5 adalah = "basecon!ert<br>#+%
print9)#(esimal "bilangan dalam basis & adalah = "desbin<br>#+%
print9)#(esimal "bilangan dalam basis DV adalah = "desheF<br>#+%
print9)#(esimal "bilangan dalam basis X adalah = "desoct<br>#+%
P
?>
</bod>
</html>
+ungsi @ate3ati2a :ainn%a
/ungsi-fungsi matematika yang juga dikenal $&$, yaitu*
abs)F+< nilai absolut dari F
ceil)F+< untuk membulatkan pecahan F ke atas
9loor)F+< untuk membulatkan pecahan F ke baSah
round)F<+< untuk membulatkan pecahan F sampai angka dibelakang koma
pi)+< sama dengan atau &&/@ atau kiraBkira 5<DR
number;9ormat)F<<k<r+< menuliskan bilangan F dengan 9ormat angka dibelakang
koma< dengan k adalah koma dan r adalah pemisah ribuan
+ungsi &ate dan $i3e
+ungsi date/0
Digunakan untuk mengambil tanggal dan jam sekarang. &asil dari fungsi ini
adalah sebuah string yang berisi tanggal"jam sesuai dengan format yang
diinginkan.
Sintaks*
date(string format)
/ormat yang dikenal dalam fungsi date ini adalah sebagai berikut*
"ara2ter "eterangan
a am / pm
I I0 / P0
7 SSatch 4nternet time
d da o9 the month< & digits Sith leading >eros% i'e' #?D# to #5D#
( da o9 the Seek< teFtual< 5 letters% i'e' #.ri#< :Sun
. month< teFtual< long% i'e' #Uanuar#<*o!ember
g hour< D&Bhour 9ormat Sithout leading >eros% i'e' #D# to #D&#
2 hour< &RBhour 9ormat Sithout leading >eros% i'e' #?# to #&5#
h hour< D&Bhour 9ormat% i'e' #?D# to #D&#
H hour< &RBhour 9ormat% i'e' #??# to #&5#
i minutes% i'e' #??# to #$Y#
4 )capital i+ #D# i9 (alight Sa!ings 8ime< #?# otherSise'
- da o9 the month Sithout leading >eros% i'e' #D# to #5D#
l )loSercase 6+ da o9 the Seek< teFtual< long% i'e' #.rida#
6 boolean 9or Shether it is a leap ear% i'e' #?# or #D#
m month% i'e' #?D# to #D&#
0 month< teFtual< 5 letters% i'e' #Uan#< :0ar
n month Sithout leading >eros% i'e' #D# to #D&#
s seconds% i'e' #??# to #$Y#
S Znglish ordinal su99iF< teFtual< & characters% i'e' #th#< #nd#
t number o9 das in the gi!en month% i'e' #&X# to #5D#
8 8ime>one setting o9 this machine% i'e' #0(8#
E seconds since the epoch
S da o9 the Seek< numeric< i'e' #?# )Sunda+ to #V# )Saturda+
/ ear< R digits% i'e' #DYYY#
ear< & digits% i'e' #YY#
> da o9 the ear% i'e' #?# to #5V$#
[ time>one o99set in seconds )i'e' #BR5&??# to #R5&??#+
+ungsi chec2date/0
Digunakan untuk memeriksa apakah format penulisan tanggal sudah benar.
Sintaksnya adalah*
chec&date('%ulan,'hari,'tahun)
contoh21).php
<html>
<head>
<title>'== .ungsi 8ime dan (ate =='</title>
</head>
<bod>
<9ont 9ace=!erdana si>e=&>
<?
echo #Sekarang''''<br>#%
echo #Hari = #<date)l+<#<br>#%
echo #8anggal = #<date)\d . /\+<#<br>#%
echo #Uam = #<date)\h=i=s I\+%
echo #<hr>#%
"hari=5?%
"bulan=&%
"tahun=&??$%
"!alidasi=checkdate)"bulan<"hari<"tahun+%
echo #8anggal ang dipilih = "hari B
"bulan B "tahun <br>#%
echo #Penulisan tanggal B
<b><E>#%
i9 )"!alidasi+
O
echo #benar#%
P else
O
echo #salah#%
P
echo #</b></u><br>#%
echo #Silahkan dibetulkan kembali#%
?>
</bod>
</html>
+ungsi getdate/0
Digunakan untuk menghasilkan waktu dengan keluaran bertipe array. Sintaksnya
adalah*
chec&date('%ulan,'hari,'tahun)
"ara2ter "eterangan
hours Uam
mda Hari
minutes 0enit
mon 7ulan dalam digit
month 7ulan
seconds (etik
Sda Hari dalam digit
Seekda Hari
da Hari keB dari tahun
ear 8ahun
contoh211.php
<html>
<head>
<title>'== .ungsi getdate =='</title>
</head>
<bod>
<9ont 9ace=!erdana si>e=&>
<?
echo #Sekarang Uam = #<date)\h=i=s I\+%
echo #<hr>#%
"-am=getdate)+%
echo #Selamat <b><u>#%
i9)"-am]hours^<=Y+
echo #Pagi#%
else
i9)"-am]hours^<=DR+
echo #Siang#%
else
i9)"-am]hours^<=DY+
echo #Sore#%
else
echo #0alam#%
echo #</b></u> 0r' Uack#%
?>
</bod>
</html>
+ungsi Variable
/ungsi %ariable digunakan untuk mengeek keberadaan %ariable. /ungsi-fungsi yang
termasuk fungsi %ariable adalah*
+ungsi Variable "eterangan
double!al)"!ar+ 0engubah !ariabel "!ar men-adi double
empt)"!ar+ 0emeriksa apakah !ariabel "!ar belum puna nilai
isset)"!ar+ 0emeriksa apakah !ariabel "!ar sudah dide9inisikan
int!al)"!ar+ 0erubah !ariabel "!ar men-adi integer
gettpe)"!ar+ 0emeriksa tpe !ariabel "!ar
4s;arra)"!ar+ 0emeriksa apakah "!ar berupa arra
is;bool)"!ar+ 0emeriksa apakah "!ar bertipe boolean
4s;double)"!ar+ 0emeriksa apakah "!ar bertipe double
is;9loat)"!ar+ 0emeriksa apakah "!ar bertipe 9loat
is;int)"!ar+ 0emeriksa apakah "!ar bertipe short integer
4s;integer)"!ar+ 0emeriksa apakah "!ar bertipe integer
is;long)"!ar+ 0emeriksa apakah "!ar bertipe long integer
is;numeric)"!ar+ 0emeriksa apakah "!ar bertipe numerik
4s;ob-ect)"!ar+ 0emeriksa apakah "!ar berupa ob-ek
is;real)"!ar+ 0emeriksa apakah "!ar bertipe real
is;resource)"!ar+ 0emeriksa apakah "!ar berupa resource
4s;string)"!ar+ 0emeriksa apakah "!ar bertipe string
settpe)"!ar+ 0enentukan tipe !ariabel "!ar
str!al)"!ar+ 0engambil nilai string dari "!ar
unset)"!ar+ 0enghapus !ariabel "!ar
+ungsi @ail
Digunakan untuk mengirimkan e-mail ke alamat e-mail tertentu.
Sintaks*
ail($penerima,$subject,'isi_email[,$header])(
+ontoh*
"pengirim = :.rom= saa_email'com%
"tu-uan = :anonkuncoro_ahoo'com%
"sub-ect = :Pemberitahuan%
"isi = :4ni adalah percobaan pengiriman eBmail dengan menggunakan PHP%
mail)"to<"sub-ect<"isi<"pengirim+%
1!. @engolah +ile/data $e2s
@e3bu2a +ile
Gntuk membuka file teks, perintah yang digunakan adalah fopen(). Sedangkan
untuk menutup file adalah fclose(). $erhatikan ontoh berikut*
contoh225.php
<html>
<head>
<title>'== 0engelola .ungsi .ile =='</title>
</head>
<bod>
<9ont 9ace=!erdana si>e=&>
<?
echo #<b><u>0enampilkan isi 9ile datasisSa'dat</b></u><br><br>#%
i9 )"9ile=9open)#datasisSa'dat#<#r#++
O
Shile )M9eo9)"9ile++
O
"string=9gets)"9ile<&$$+%
echo)"string+%
P
9close)"9ile+%
P
else
O
echo #.ile gagal dibuka#%
P
?>
</bod>
</html>
Sebelum sript diatas dijalankan, terlebih dahulu harus dibuat file datasiswa.dat.
.ika tidak dibuat dan sript tetap dijalankan, maka akan keluar pesan warning seperti
dalam gambar diatas. Gntuk itu, silahkan buat file datasiswa.dat. dengan
Dote$ad dan isi seperti dalam gambar berikut*
Setelah file tersebut disimpan, kembali jalankan file contoh2_22.php. Sehingga
akan didapatkan hasil seperti gambar berikut ini*
@e3asu22an &ata
Gntuk memasukkan data pada file teks menggunakan perintah*
fputs(naa"file,isi)
$erhatikan ontoh berikut.
contoh221.php
<html>
<head>
<title>'== 0engelola .ile =='</title>
</head>
<bod>
<h5><u>0engelola .ile 8eks</u></h5><p>
<9ont 9ace=!erdana si>e=&>
<9orm>
0asukkan *ama SisSa =
<input tpe=teFt name=isi><br><br>
<input tpe=submit !alue=#proses#>
</9orm>
<?
//!alidasi isi
i9 )isset)"isi++
i9 )empt)"isi++
echo #(ata harus terisi#%
else
O
i9)"berkas=9open)#datasisSa'dat#<#r#++
O
//0emasukkan (ata
"berkas=9open)#datasisSa'dat#<#a,#+%
9puts)"berkas<"isi+%
9puts)"berkas<#<br>#+%
9close)"berkas+%
//menampilkan
"berkas=9open)#datasisSa'dat#<#r#+%
Shile)M9eo9)"berkas++
O
"teks=9gets)"berkas<&$$+%
echo )"teks+%
P
9close)"berkas+%
P
else
O
echo)#.ile gagal dibuka#+%
P
P
?>
</bod>
</html>
Setelah dijalankan, maka hasilnya akan seperti gambar berikut*
-sikan data pada form input, kemudian klik tombol proses, maka akan munul
gambar sebagai berikut*
1#. .utenti-i2asi @engguna2an Session
Session digunakan untuk menyimpan atau menatat %ariabel yang sama ke halaman
yang lain. Session biasanya dipakai untuk aplikasi-aplikasi yang memerlukan
keamanaan. Setiap pengunjung akan diperiksa terlebih dahulu sebelum dapat
mengakses sebuah halaman web. .ika tidak berhak, maka halaman yang diminta
pengunjung tidak dapat ditampilkan.
Gntuk memulai session perintah yang digunakan adalah session_start(). Dan
untuk mengakhiri session menggunakan perintah session_destroy(). 'erdapat
banyak fungsi yang berhubungan dengan session, yaitu*
+ungsi session,start()
Berfungsi untuk memulai session. Sintaksnya adalah sebagai berikut*
session,start()
+ungsi session,destroy()
Berfungsi untuk mengakhiri session. Sintaksnya adalah sebagai berikut*
session,destroy()
+ungsi session,name()
Digunakan untuk mengambil atau menentukan nama sebuah session. Sintaksnya
adalah sebagai berikut*
session,name([nama])
.ika argumen nama tidak disertakan, maka fungsi ini digunakan untuk mengambil
nama sebuah session dan jika tidak disertakan digunakan untuk memberi nama
pada session.
+ungsi session,module,name()
Digunakan untuk mengambil atau menentukan nama sebuah modul session.
Sintaksnya adalah sebagai berikut*
session,module,name([modul])
.ika argumen modul tidak disertakan, fungsi ini digunakan untuk mengambil
nama sebuah modul session dan jika tidak disertakan digunakan untuk memberi
nama pada modul session.
+ungsi session,save,path()
Digunakan untuk mengambil atau menentukan path dari direktori yang digunakan
untuk menyimpan data-data sebuah session. Sintaksnya adalah sebagai berikut*
session_save_path([path])
+ungsi session,id()
Digunakan untuk mengambil atau menentukan identitas sebuah session.
Sintaksnya adalah sebagai berikut*
session,id([id])
+ungsi session,register()
Digunakan untuk mendaftarkan %ariabel ke dalam sebuah session. Sintaksnya
adalah sebagai berikut*
session,register([namavar1[,namavar2...])
#rgumen nama%ar:, nama%ar@ dan seterusnya berupa string yang menampung
nama %ariabel (tanpa tanda L didepannya).
+ungsi session,unregister()
Digunakan untuk menghilangkan sebuah %ariabel dari sebuah session, namun
session tersebut tetap ada. Sintaksnya adalah sebagai berikut*
session,unregister(namavar)
+ungsi session,unset()
Digunakan untuk menghilangkan nilai semua %ariabel yang ada dalam sebuah
session. Sintaksnya adalah sebagai berikut*
session,unset()
+ungsi session,is,registered()
Digunakan untuk memeriksa apakah sebuah %ariabel telah didaftarkan pada
sebuah session. Sintaksnya adalah sebagai berikut*
session,isregistered(namavar)
#rgumen nama%ar berupa string yang merujuk nama %ariabel (tanpa tanda L
didepannya).
,ontoh Penggunaan
Gntuk memahami session, kita akan latihan membuat session dengan aplikasi
login. !ang perlu dbuat pertama kali adalah file admin.html.
+ile ad3in.ht3l
<html>
<head><title>'== 6ogin Idministrator =='</title></head>
<bod bgcolor=##......#>
<9orm name=#9ormD# action=login'php method=PKS8>
<table Sidth=#V&C# border=D align=center
cellpadding=? cellspacing=? bgcolor=#999999 bordercolor=purple>
<td>
<table Sidth=#D??C# border=? align=center cellpadding=D cellspacing=D
bgcolor=#999999 >
<tr bgcolor=magenta>
<td colspan=&><di! align=center><strong>6ogin Idmin</strong></di!></td>
</tr>
<tr bgcolor=#999999>
<td Sidth=5DC>Eser 4(</td>
<td Sidth=VYC><input tpe=teFt name=user id=admin si>e=&$
maFlength=&$></td>
</tr>
<tr bgcolor=#999999>
<td
Sidth=5DC>PassSord</td>
<td Sidth=VYC><input
tpe=passSord name=passSord
id=pass si>e=&$
maFlength=&$></td>
</tr>
<tr>
<td Sidth=D$C colspan=&
align=center><hr></td>
</tr>
<tr>
<td colspan=&
align=right><input tpe=submit
!alue=#6ogin#>
<input tpe=reset !alue=#3eset#></td>
</tr>
</table>
</td>
</table>
</9orm>
</bod>
</html>
Selanjutnya buat file berikut*
+ile login.php
<?
session;start)+%
i9 )empt)"user++
echo #*ama Eser 7elum (i 4si#%
elsei9 )empt)"passSord++
echo #PassSord 7elum (i 4si#%
elsei9 )"user==#-ack# H
"passSord==#onlme#+
O
"master="user%
session;register)#master#+%
header)#location=halaman;utama'php#+%
eFit)+%
P
else echo #Inda 8idak 8erda9tar#%
?>
+ile hala3anuta3a.php
<?
session;start)+%
?>
<html>
<head>
<title>'== Halaman Etama =='</title>
</head>
<bod>
<9ont 9ace=tahoma si>e=&>
<?
i9)Msession;is;registered)#master#++
echo #<h5>Ikses (itolak'''
</h5>#%
else
O
echo #Telcome <b>
"master ''' </b><br>#%
echo #<h5>HI6I0I*
I(04*4S83I8K3</h5>#%
echo #J <a hre9=halD'php>
PI2Z D</a>#%
echo #J <a hre9=hal&'php>
PI2Z &</a>#%
echo #J <a hre9=logout'php>
logout</a> J#%
echo #<hr>#%
P
?>
</bod>
</html>
+ile hal1.php
<?
session;start)+%
?>
<html>
<head>
<title>'== Halaman D =='
</title></head>
<bod>
<9ont 9ace=tahoma si>e=&>
<?
i9)Msession;is;registered
)#master#++
echo #<h5>Ikses (itolak'''
</h5>#%
else
O
echo #<9ont 9ace=
tahoma si>e=&>#%
echo #<h5>PI2Z D</h5>#%
echo #<p align=right>
J <a hre9=logout'php>logout</a> J#%
echo #<hr>#%
echo #*ama Eser <b><u>"master</b></u>#%
P
?>
</bod>
</html>
+ile hal2.php
<?
session;start)+%
?>
<html>
<head>
<title>'== Halaman & =='
</title></head>
<bod>
<9ont 9ace=tahoma si>e=&>
<?
i9)Msession;is;registered
)#master#++
echo #<h5>Ikses (itolak'''
</h5>#%
else
O
echo #<9ont 9ace=
tahoma si>e=&>#%
echo #<h5>PI2Z &</h5>#%
echo #<p align=right> J <a hre9=logout'php>logout</a> J#%
echo #<hr>#%echo #*ama Eser <b><u>"master</b></u>#%
P
?>
</bod>
</html>
+ile hal2.php
<?
session;start)+%
session;destro)+%
header)#location=admin'html#+%
?>
&.+$.; P>S$.".
:. Bimo Sunarfrihantono, S', PHP dan M-S)L *ntuk 'E!, #ndi @;;7
@. Bunafit Dugroho, PHP . M-S)L $engan Editor $ream"ea/er M0, #ndi, @;;B
7. (io $ardosi, !ahasa Pemrograman #nternet1 HTML dan 2a/ascript, -ndah, @;;:
B. (#D+E(S, Aplikasi Manajemen $atabase Pendidikan !erbasis 'eb $engan PHP dan
M-S)L, #ndi, @;;=
=. Sutarman, S.3om, Membangun Aplikasi 'eb $engan PHP dan M-S)L, ,raha -lmu, @;;7
?. 'eguh Wahyono, PHP T(#A$ &undamental 3Memahami Pemrograman 'eb $engan PHP dan
M-S)L dalam 45 2am6, ,a%a (edia, @;;=
Q. 0isibooks, HTML and 2a/aScript 7or 8isual Learners,
A. !ahya 3urniawan, S', Aplikasi 'eb $atabase dengan PHP dan M-S)L, >le2 (edia
3omputendo, @;;7.
<. http*""www.ilmukomputer.om
:;.http*""www.klik-kanan.om