SlideShare a Scribd company logo
1 of 16
1
BAB I
PENDAHULUAN
A. Latar Belakang
PHP adalah sebuah bahasa pemrograman yang didesain agar dapat
disisipkan dengan mudah ke halaman HTML. PHP memberikan solusi sangat
murah (karena gratis digunakan) dan dapat berjalan di berbagai jenis
platform. Pada awalnya memang PHP berjalan di sistwm UNIX dan
variannya, namun kini dapat berjalan dengan lancar di lingkungan system
operasi windows. Suatu nilai tambah yang luar biasa karena proses
pengembangan program berbasis web dapat dilakukan lintas system operasi.
Dengan luasnya cakupan system operasi yang mampu menjalankan
PHP dan ditambah begitu lengkapnya function yang dimilikinya (tersedia
lebih dari 400 function di PHP yang sangat berguna) tidak heran jika PHP
semakin menjadi tren di kalangan programmer web.
Penemu bahasa pemrograman ini adalah Rasmus Lerdorf, yang bermula
dari keinginan sederhana Ledorf untuk mempunyai alat bantu dalam
memonitor pengunjung yang melihat situs web pribadinya. Inilah sebabnya
pada awal pengembangannya, PHP merupakan singkatan dari Personal Home
Page tools, sebelum akhirnya menjadi Hypertext Prepocessor.
Antusias komunitas internet terhadap bahasa PHP ini begitu besar,
sehingga Rasmus Ledorf akhirnya menyerahkan pengembangan PHP ini
kepada sebuah tim pemrograman dalam rangka gerakan open source. Tim ini
membangun kembali PHP dari awal dengan menulis ulang program parser
PHP. Hasilnya adalah PHP 3.0 yang memiliki dukungan lebih luas terhadap
database. PHP 4.0 sebagai versi lanjutan dari PHP 3.0 dirilis. Setelah itu,
dengan menggunakan mesin scripting Zend untuk memberikan kinerja yang
lebih capet dan lebih baik. Versi ini telah mampu mendukung server web
selain Apache dan secara built-in telah mampu menangani menajemen
session.
Untuk dapat menjalankan script-script PHP, sebuah system harus
mempunyai Apache Web server, PHP 4/PHP 5, dan database MySQL.
2
Ketiganya adalah program open source yang tersedia secara gratis di internet
dan dapat berjalan di berbagai platform (windows maupun UNIX/Linux).
B. Tujuan
1. Agar kita bisa mengetahui apa itu pemrograman PHP
2. Agar kita bisa mengimplementasikan aplikasi PHP
3. Mengetahui teknik-teknik dasar pemrograman PHP
C. Rumusan masalah
1. Bagaimana menulis kode program PHP yang efektif dan efisien?
2. Bagaimana kita bisa memahami teknik-teknik dasar pemrograman PHP?
3
BAB II
PEMBAHASAN
A. Mencetak Output
PHP menyediakan beberapa fungsi string untuk mencetak output ke
browser, dua di antaranya yang sering digunakan adalah print( ) dan echo().
Kedua fungsi ini sebenarnya bukan fungsi riil, tetapi suatu konstruksi bahasa.
Meskipun secara garis besar print() dan echo() memiliki tujuan sama, akan
tetapi ada beberapa perbedaan esensial yang perlu diperhatikan.
Fungsi print() berperilaku seperti fungsi pada umumnya, dan memiliki
nilai kembalian (return value) berupa integer 1. Dengan demikian, print()
dapat digunakan sebagai bagian dari ekspresi yang lebih kompleks.
Sementara itu, echo()mempu menerima lebih dari satu parameter sekaligus,
dan tidak memiliki nilai kembalian.
print ‘String 1’;
echo ‘String 1’;
// Menggunakan beberapa parameter
Echo ‘String 1’, “String 2”, ‘…’;
Fungsi string echo() akan dieksekusi lebih cepat dibanding dengan
print(). Perbedaan ini disebabkan fungsi print() akan mengembalikan status
(integer) yang menyatakan apakah proses berhasil dilaksanakan atau tidak.
Di sisi lain, echo() hanya menampilkan output saja dan tidak
mengerjakan apa-apa lagi. Adapun dalam implementasinya, status nilai
kembalian dari penggunaan fungsi string hampir tidak pernah diperlukan.
B. Deklarasi Variabel dan Variabel Dinamis
Tidak seperti bahasa lain (C, atau C++), variabel di PHP bisa
digunakan meskipun belum dideklarasikan. Kita bisa menciptakan variabel
kapan saja ketika memerlukan, kemudian menggunakannya. Variabel ini akan
tetap eksis selama program dieksekusi.
4
Penamaan variabel harus diawali dengan tanda dollar($) dan diikuti
oleh nama ringkas. Nama variabel tidak boleh diawali dengan angka, tapi bisa
berisi angka dan karakter underscore (_). Untuk menghindari kesalahan
dalam menggunakan variabel, perlu diketahui, nama variabel bersifat
sensitive.
// deklarasi dan inisialisasi variabel
$result =1+5; // valid
$RESULT =2+5; // valid, beda dengan $result
$_result =3+5; // valid
//deklarasi dan inisialisasi variabel
$1 =1+5; // tidak valid
$1res =2+5; // tidak valid
$#res =3+5; // tidak valid
$my-res =4+5; // tidak valid
Tanda dollar berfungsi untuk membantu dalam membedakan variabel
dengan fungsi dan keyword PHP. Tanda dollar adalah bagian dari nama
variabel, atau bisa dikatakan sebagai suatu operator yang mangacu ke
memori.
Di PHP, bisa juga menciptakan nama variabel secara dinamis, yakni
menggunakan sintaks variabel (double variabel). Variabel-variaebl
mengambil nilai dari suatu variabel dan memperlakukannya seperti nama
variabel.
Contohnya seperti berikut :
$a = “hello”;
$$a = “world”;
Tanda double dollar ($$) adalah sintaks yang digunakan untuk
menuliskan suatu variabel. Variabel yang juga desebut variabel dinamis ini
bisa dipanggil melalui dua cara.
// Memanggil variabel dinamis
echo “${$a}”; // mencetak world
// ekuivalen dengan berikut:
Echo “$hello”; // mencetak world
5
//memanggil semua (kedua) variabel
Echo “$a $hello”; // mencetak hello world
C. Mengelola variabel
Dalam implementasi pembuatan kode program, secara garis besar ada
tiga konstruksi bahasa yang digunakan untuk mengelola variabel, yaitu
isset(), unset() dan empty()
1. Isset
Isset() digunakan untuk menyatakan apakah suatu variaebl diset atau
tidak. Apabila variabel sudah diset, isset() akan mengembalikan niali
true, dan sebaliknya bernilai false. Begitu pula ketika variabel
diinisialisasikan dengan nilai NULL, isset() akan mangembalikan nilai
false.
2. Unset
Unset() merupakan kebalikan dari isset(), yakni meng-unset variabel, dan
membebsakan memori yang sudah digunakan, jika tidak ada variabel
yang mengacu nilainya. Pemanggilan isset() pada variabel yang sudah di-
unset akan mengembalikan nilai false.
3. Empty
Pada umumnya, empty() sering digunakan untuk memeriksa
apakah variabel form tidak dikirim atau tidak berisa data.Berbeda
dengan isset(), yang mengembalikan false pada variabel yang di-unset,
empty() akan mengembalikan nilai true.
D. Fungsi/Method
Fungsi, atau method di paradigma objek, adalah blok kode yang dapat
didefinisikan kemudian dipanggil (di-invoke) dari bagian lainprogram.
Penggunaan frungsi dapat menjadikan kode program lebih moduler. Fungsi
menyediakan kemampuan yang lebih baik bagi struktur kode agar dapat
digunakan ulang (reusable).
Sebagai pemrogram, harus bisa manganalisa, kapan harus
menggunakan fungsi dan kapan tidak mengunakannya. Sebagai, untuk kode-
6
kode yang sama dan sering digunakan, tentu akan lebih praktis dijadikan
suatu fungsi.
Contoh:
/* Mendapatkan jam dari system
Dengan format 0-23 */
$time = date (“G”);
If ($time < 12 ) {
$say = ‘good morning..’;
} elseif ($time < 17) {
$say = ‘good afternoon..’;
} else {
$say = ‘good evening..’;
}
Echo $say;
Pada saat fungsionalitas kode di atas diperlukan kembali, akan
menulis ulang kode yang kenyataannya sama. Agar lebih efektif dan efisien,
lebih praktis jika kode di atas dijadikan kode sebagai suatu fungsi.
Function greeting ($tNow) {
If (!$tNow) return ‘’;
If ($tNow < 12 ) return ‘good morning..’;
If ($tNow < 17 ) return ‘good afternoon..’;
If ($tNow > 17 ) return ‘good evening..’;
}
// memanggilfungsi
Echo greeting ($time);
Dalam pengembangan aplikasi web, sebaiknya menghindari penulisan
ulang fungsi pre-defined PHP. Lain halnya jika fungsi memiliki
fungsionalitas khusus, dan penulisan ulang fungsi PHP diperlukan untuk
mendukung implementasi fungsi.
Contoh penulisan ulang PHP :
// menulis ulang fungsi strlen
Function getLength($str) {
Return strlen($str);
}
7
// Mengembalikan panjang srting
Echo getLength (‘hello’);
Penulisan ulang fungsi-fungsi PHP mengakibatkan kode program
susah dibaca oleh user. Disamping itu, yang lebih penting, penulisan ulang
fungsi PHP di dalam fungsi user defined akan memerlukan waktu tambahan
saat eksekusi sehingga menjadiak kode labih lambat.
E. Passing by Reference
Secara default, melewatkan (passing) argument pada suatu fungsi
menggunakan value. Mekanisme yang dikenal sebagai passing-by-value ini,
pada teknisnya, meng-copy nilai argument yang di-pass tersebut ke dalam
variable local. Mekanisme lain dalam passing argumen adalah passing-by-
reference.
Passing melalui referensi (reference) mengizinkan untuk menghindari
pekerjaan pengembalian variable dan mengassign nilai ke variable aslinya. Ini
akan bermanfaat ketika ingin memodifikasi nilai argument dengan fungsi
tersebut.
Untuk melakukan passing melalui referensi, tambahkan operatot dan
pada vaiabel yang manjadi argument.
Contohnya seperti berikut
// passing variable $str by referece
Function setHTMLTag (&$str, $tag = ‘b’) {
$str = “<$tag>$str</$tag>”;
}
$myStr = “Hello”;
seHTMLtag($myStr);
echo $myStr;
//men-set tag h1
setHTMLTag ($myStr, ‘h1’);
echo $myStr;
Dalam kasus ini, argument yang berupa variable $str akan di=-pass by
reference. Di sini tidak perlu mendefinisikan nilai kembalian karena nilai
aslinya sudah dimodifikasi.
8
Selain passing argument, juga bias mengembalikan nilai melalui
referensi, bukan melalui nilai. Penulisan fungsi untuk implementasi ini
hamper sama dengan passing, tetapi operator dan diletakkan sebelum nama
fungsi.
Function &setHTMLTag ($str, $tag = ‘b’ ) {
//return valueby reference
Return “<$tag>$str</$tag>”;
}
$mystr = “hello”;
$bold =& setHTMLTag($mySTr);
Echo $bold;
//men-set tag h1
$head =& setHTMLtag($myStr, ‘h1’);
Echo $head;
Perhatikan operator assignment yang digunakan di sini adalah =&,
bukan operator =, jika menggunakan operator =, maka PHP akan meng-assign
value, bukannya mengacu (me-refer).
Perlu diketahui, contoh di atas sekedar menggambarkan penggunaan
referensi referensi. Bagaimanapun juga, penting sekali untuk memahami
pendekatan berbasis referensi karena sering menimbulkan kesalahan dalam
menginterpretasikannya, terutama ini terkait dengan masalah performansi.
Untuk lebih jelasnya, simak pembahasan mengenai Optimasi dan
Performansi.
F. Statement if else
Pernyataan kondisional seperti if dan switch mengizinkan blok kode
yang berbeda untuk dieksekusi b ergabtung pada keadaan saat dieksekusi.
Kondisi pada pernyataan if dapat berupa ekspresi apa pun, yang dievaluasi ke
nilai Boolean (true atau false). Pada umumnya, pernyataan akan diletakkan ke
dalam suatu blok dan diapit oleh tanda kurung kurawal.
9
Contoh:
$pass = ‘okey’;
If ($pass == ‘oke’) }
Echo ‘OKE <br> ‘;
} else {
Echo ‘NOT OKE <br>’;
}
// Hasil : NOT OKE
Untuk menyederhanakan logika pemrograman, bisa menggunakan
operator ternary (?) ketika membuat pernyataan kondosional if else seperti
contoh di atas. Dengan menggunakan operator ternary, kode diatas bisa
diringkas menjadi:
$pass = ‘Okey’;
Echo ($pass == ‘oke’) ? ‘OKE’ : ‘NOT OKE’;
// hasil : NOT OKE
Sederhananya, disini cukup berpedoman pada operator ? dan :.
Dimana, pernyataan setelah ? akan dieksekusi jika kondisi terpenuhi, dan
sebaliknya pernyataan setelah : yang dieksekusi.
Terkait dengan penggunaan pernyataan kondisional if, ada hal “kecil”
yang perlu diperhatikan karena sangat mungkin menimbulkan maslah besar.
Bayangakan jika kode diatas digunakan untuk verifikasi password, kemudian
keliru menulisakn operator == menjadi =, apa yang terjadi??? Tentu saja
string “oke” akan di-assign ke variabel $pass, dan menjadikan nilai variabel
$pass sama dengan “oke”l
Untuk menghindari kesalahan,ada trik sederhana yaitu:
$pass = ‘okey’;
Echo ($pass == ‘oke’) ? ‘OKE’ : ‘NOT OKE’;
// hasil : NOT OKE
// perhatikan operator untuk komparasi…!!
$pass1 = ‘Okey’;
Echo ($pass1 = ‘oke) ? ‘OKE’ : ‘NOT OKE’;
// hasil : OKE
$pass2 =’okey’;
Echo (‘oke’ = $pass2) ? ‘OKE’ : ‘NOT OKE’;
// Hasil : pesan error, kode tidak dieksekusi
10
Meskipun kode pada baris terakhirdi atas akan menghasilkan pesan
kesalahan ketika menuliskan operator komparsi, tetapi tidak sampai berakibat
meloloskan string password yang tidak valid.
Alternatif lain untuk melakukan komparasi adalah menggunakan
operator ===(identik). Operator ini akan mengembalikan nilai true apabila
operand yang dibandingkan memiliki nilai dan tipe sama. Ini berbeda sekali
dengan operator ==, yang mengembalikan true jika nilai operand sama
meskipun tipe datanya berbeda.
G. Tanda Kutip Pada String
Parser PHP menentukan string-string dengan mencari pasangan tanda
kutip. Oleh karena itu, semua string harus diawali dan diakhiri dengan tanda
kutip yang sama, yaitu tunggal atau ganda. PAbila suatu string diapit oleh
tanda kutip yang berbeda, parser PHP tidak akan menguraikan string tersebut.
Perbedaan penggunaa tand kutip tunggal dan ganda terletak pada fitur
yang disediakan, termasuk sintaks penulisan untuk variabel spesifik. Tand
kutip ganda mangizinkan penggunaan karakter-karakter khusus, seperti /n, /t,
/r, sedangkan tanda kutip tunggal ridak. Selain itu, ketika menggunakan
variabel di dalam string, teras bahwa tand kutip ganda menawarkan cara yang
lebih mudah.
$thn = date (“Y”);
Echo “Tahun $thn sekarang”;
//hasil : tahun 2006 sekarang
Echo “Tahun ($thn) sekarang”;
//hasil : tahun 2006 sekarang
Echo ‘Tahun $thn sekarang’;
//hasil : tahun 2006 sekarang
Echo ‘tahun ‘.$thn.’ Sekarang’;
//hasil : tahun 2006 sekarang
Penggabungan string dan variabel pada fungsi string echo() yang
menggunakan tanda kutip tunggal dilakukan dengan memanfaatkan operator
konkatenasi (.). Untuk string dengan tanda kutip ganda, selain
menggabungkan langsung, bisa manggunakan tand kurung kurawal. Tanda
11
kurung kurawal ini umumnya dgunakan untuk mengacu ke variabel yang
kompleks, misalnya mengandung array.
String dengan tanda kutip tunggal dan ganda ditangani secara berbeda
oleh PHP. String yang digunakan tanda kutip ganda akan diinterpretasi,
sedangkan string dengan tand kutip tunggal tidak diinterpretasi dan secara
langsung diperlakukan sebagai string. Akibatnya, kode yang menggunakan
tanda kutip tunggal akan berjalan sedikit lebih cepat dibandingkan kode tanda
kutip ganda.
H. Manajemen String
Salah satu kasus sederhana terkait manajemen string adalah
pembentukan string yang akan ditampilkan. Sebagai contoh, Kita memiliki
string yang cukup panjang. Selanjutnya, agar memudahkan penulisan dan
pembacaan kode, kita ingin memotong string ke dalam beberapa bagian.
Contoh:
Echo ‘string1’;
Echo ‘string2’;
Echo ‘string3’;
Kode di atas memang akan bekerja, tapi hasilnya kurang efisien.
Sebagai solusinya, gunakan tanda titik sebagai operator konkatensi (atau
disebut operator dot). Hasilnya:
// eksekusi lebih cepat
$str = ‘string1’;
$str .= ‘string2’;
$str .= ‘string3’;
Echo $str;
Dengan menjadikan bagian-bagian string ke dalam satu variabel
string, akan mengakibatkan pemrosesan dilakukan lebih cepat dibanding kode
sebelumnya.
12
I. Operasi Array
Pembacaan elemen array merupakan kategori operasi dasar yang
umum dilakukan. Adapun teknik yang sering digunakan adalah melakukan
looping untuk mendapatkan elemen-elemen array. Meskipun operasi ini
terlihat sepele, akan tetapi bisa menimbulkan kerugian jika tidak dilakukan
dengan baik dan benar.
Contoh
$arr = array ( ‘PHP’ , ‘javascript’. ‘ASP’, ‘HTML’ );
// Kurang efisien
// Recounting array tiap looping
For ($i=0; $i<count ($arr); $i ++) {
Echo $arr[$i]. ‘<br>’;
}
Kode di atas memang akan bekerja seperti yang diharapkan, tapi tidak
efisien sekali. Dimana setiap melakukan looping, kode akan mancari jumlah
eleman array sehingga memboroskan sumber daya. Untuk cara yang lebih
efisien, terlebih dahulu cari jumlah eleman array, baru kemudian dijadikan
ekspresi loop for.
Ada kalanya, mungkin perlu mengkonversi string array, dan
sebaliknya, array ke string. Kasus ini bisa diselesaikan dengan mudah melalui
fungsi implode() dan explode()
J. Swapping Variabel
Dalam kasus penukaran (swaaping) variabel, umumnya menggunakan
bantuan variabel temporary. Tekniknya sderhana sekali, miaslnya variaebl x
di-assign ke variabel temporary, kemudian variabel y di-assign ke x, dan
variabel temporary di-assign ke-y. Akhirnya penukaran berhasil seperti yang
diharapkan.
Sebenernya, dalam melakukan swapping variabel, tidak harus
memerlukan bantuan variabel temporary. Solusinya adalah dengan
memenfaatkan konstruksi bahasa list() dan array().
13
K. Kode yang manageable
Walaupun diperbolahkan mencampur kode PHP dan HTML, tetapi
perlu diperhatikan strateginya. Adapun strategi yang baik adalah memisahkan
kode PHP dan HTML. Tekniknya, ketika ingin menampilkan dokumen
HTML, akhiri kode PHP menggunakan tag penutup.
Contoh :
<?php
…….
…….
If (count(@$errors) > 0) {
?>
<form action=”<?$_SERVER[‘PHP_SELF’]?>”
Method=POST>
<table>
<tr>
<td>tgl lahir</td>
<td.<input name=”tgl”
Value=”<?php echo @$_post[‘tgl’];?>”></td>
<td><?php echo $warnings[‘tgl’];></td>
</tr>
</table>
<input value=”submit”>
</form>
<?php
} else { //count < 0
…….
…….
}
?>
Potongan kode program di atas lebih mudah dikelola (manageable),
dibanding menanamkan kode HTML kedalam kode PHP. Disamping itu,
kode seperti itu memungkinkan dilakukannya eksekusi yang lebih cepat.
Secara garis besar, ketika web server membaca halaman web, perser PHP
akan mencari tag untuk diterjemahkan sebagai kode PHP> Begitu tag
ditemukan, parser akan mengeksekusi kode program sampai berakhir pada
tag penutup. Selabihnya, yang diluar tag PHP dianggap bukan kode PHP
sehingga juga tidak diproses oleh parser.
14
Kode-kode PHP akan dilayani oleh web server (apache) 2-10 kali
lebih lambat disbanding halaman HTML statis. Oleh karena itu, jika
performansi merupakan masalah sensitive, gunakan kode PHP seperlunya.
Dengan kata lain, jangan “menanam” kode-kode HTML di dalam kode PHP.
L. Membaca dan Mengatur File Konfigurasi
Konfigurasi PHP diatur sepenuhnya oleh file bernama php.ini, yang
dibaca setiap start-up. Sederhananya, perilaku dari PHP sangat ditentukan
oleh konfigurasi directive-directive dip hp.ini. Apabila tidak memiliki akses
langsung ke file php.ini, gunakan fungsi ini-set() (atau ini_alter()) untuk
menetapkan konfigurasi baru. Parameter yang diperlukan adalah nama
directive dan nilai konfigurasi.
Konfigurasi seperti ini hanya berlaku saat runtime kode saja, dengan
kata lain, tidak melakukan pengubahan secara permanent. Begitu kode selesai
dieksekusi, konfigurasi akan dikembalikan seperti semula. Disamping itu,
tidak semua directive bisa diset saat runtime menggunakan ini_set(). Untuk
lebih jelasnya lihat di dokumentasi PHP.
Apabila hanya ingin mencari informasi konfigursai directive tertentu
tanpa mengubah nilainya, gunakan fungsi ini_get(). Adapun untuk semua
konfigurasi, gunakan fungsi ini_get_all().
15
BAB III
PENUTUP
A. Kesimpulan
Teknik dasar pemrograman PHP meliputi penulisan sintaks, deklarasi
variabel, pembuatan fungsi user-defined (UFDF), dan penggunaan fungsi-
fungsi dasar. Tidak bisa dipungkiri, konsep-konsep ini merupakan salah satu
kunci yang mendasari konsekuen pengembanagn aplikasi PHP.
Pada dasarnya PHP menyediakan beberapa fungsi string, dianataranya
print() dan echo(), Fungsi print() berperilaku seperti fungsi pada umumnya,
dan memiliki nilai kembalian (return value) berupa integer 1. Dengan
demikian, print() dapat digunakan sebagai bagian dari ekspresi yang lebih
kompleks. Sementara itu, echo()mempu menerima lebih dari satu parameter
sekaligus, dan tidak memiliki nilai kembalian. Penamaan variabel harus
diawali dengan tanda dollar($) dan diikuti oleh nama ringkas. Nama variabel
tidak boleh diawali dengan angka, tapi bisa berisi angka dan karakter
underscore (_). Untuk menghindari kesalahan dalam menggunakan variabel,
perlu diketahui, nama variabel bersifat sensitive.
Tanda dollar berfugsi untuk membantu dalam membedakan variabel
dengan fungsi dan keyword PHP. Tanda dollar adalah bagian dari nama
variabel, atau bisa dikatakan sebagai suatu operator yang mangau ke memori.
Di PHP, bisa juga menciptakan nama variabel secara dinamis, yakni
menggunakan sintaks variabel (double variabel). Variabel-variaebl
mengambil nilai dari suatu variabel dan memperlakukannya seperti nama
variabel. Dalam implementasi pembuatan kode program, secara garis besar
ada tiga konstruksi bahasa yang digunakan untuk mengelola variabel, yaitu
isset(), unset() dan empty()
Fungsi, atau method di paradigma objek, adalah blok kode yang dapat
didefinisikan kemudian dipanggil (di-invoke) dari bagian lainprogram.
Penggunaan frungsi dapat menjadikan kode program lebih moduler. Fungsi
menyediakan kemampuan yang lebih baik bagi struktur kode agar dapat
digunakan ulang (reusable).
16
Secara default, melewatkan (passing) argument pada suatu fungsi
menggunakan value. Mekanisme yang dikenal sebagai passing-by-value ini,
pada teknisnya, meng-copy nilai argument yang di-pass tersebut ke dalam
variable local. Mekanisme lain dalam passing argumen adalah passing-by-
reference.
Pernyataan kondisional seperti if dan switch mengizinkan blok kode
yang berbeda untuk dieksekusi b ergabtung pada keadaan saat dieksekusi.
Kondisi pada pernyataan if dapat berupa ekspresi apa pun, yang dievaluasi ke
nilai Boolean (true atau false). Pada umumnya, pernyataan akan diletakkan ke
dalam suatu blok dan diapit oleh tanda kurung kurawal.

More Related Content

What's hot

pengenalan c+
pengenalan c+pengenalan c+
pengenalan c+aks247
 
Basic PHP Syntax
Basic PHP SyntaxBasic PHP Syntax
Basic PHP Syntaxdaffa12
 
Modul algoritma dan pemograman
Modul algoritma dan pemogramanModul algoritma dan pemograman
Modul algoritma dan pemogramanPANJI_ADITYAN
 
PASCAL ( MODUL 2)
PASCAL ( MODUL 2)PASCAL ( MODUL 2)
PASCAL ( MODUL 2)Hardini_HD
 
Dasar Dasar Algoritma
Dasar Dasar AlgoritmaDasar Dasar Algoritma
Dasar Dasar Algoritmaformatik
 
Algoritma dan Struktur Data (Python) - Struktur I/O
Algoritma dan Struktur Data (Python) - Struktur I/OAlgoritma dan Struktur Data (Python) - Struktur I/O
Algoritma dan Struktur Data (Python) - Struktur I/OAndiNurkholis1
 
PHP & MySQL Basic
PHP & MySQL BasicPHP & MySQL Basic
PHP & MySQL Basichakimbks
 
Laporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul ILaporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul IShofura Kamal
 
Materi kuliah 21 pointer part 1
Materi kuliah 21   pointer part 1Materi kuliah 21   pointer part 1
Materi kuliah 21 pointer part 1Budi Yono
 

What's hot (12)

Pertemuan I Teori
Pertemuan I TeoriPertemuan I Teori
Pertemuan I Teori
 
pengenalan c+
pengenalan c+pengenalan c+
pengenalan c+
 
Modul 2
Modul 2Modul 2
Modul 2
 
Basic PHP Syntax
Basic PHP SyntaxBasic PHP Syntax
Basic PHP Syntax
 
Modul php 1
Modul php 1Modul php 1
Modul php 1
 
Modul algoritma dan pemograman
Modul algoritma dan pemogramanModul algoritma dan pemograman
Modul algoritma dan pemograman
 
PASCAL ( MODUL 2)
PASCAL ( MODUL 2)PASCAL ( MODUL 2)
PASCAL ( MODUL 2)
 
Dasar Dasar Algoritma
Dasar Dasar AlgoritmaDasar Dasar Algoritma
Dasar Dasar Algoritma
 
Algoritma dan Struktur Data (Python) - Struktur I/O
Algoritma dan Struktur Data (Python) - Struktur I/OAlgoritma dan Struktur Data (Python) - Struktur I/O
Algoritma dan Struktur Data (Python) - Struktur I/O
 
PHP & MySQL Basic
PHP & MySQL BasicPHP & MySQL Basic
PHP & MySQL Basic
 
Laporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul ILaporan Praktikum Algoritma Pemrograman Modul I
Laporan Praktikum Algoritma Pemrograman Modul I
 
Materi kuliah 21 pointer part 1
Materi kuliah 21   pointer part 1Materi kuliah 21   pointer part 1
Materi kuliah 21 pointer part 1
 

Similar to pemrograman php ii

265991658-Pengantar-PHP-ppt.ppt
265991658-Pengantar-PHP-ppt.ppt265991658-Pengantar-PHP-ppt.ppt
265991658-Pengantar-PHP-ppt.pptilhamsafari2
 
Modul praktikum algoritma
Modul praktikum algoritmaModul praktikum algoritma
Modul praktikum algoritmaRony BolaNk
 
Laporan pratikum iv web
Laporan pratikum iv webLaporan pratikum iv web
Laporan pratikum iv webrahmi wahyuni
 
Semua tentang php
Semua tentang phpSemua tentang php
Semua tentang phpZero_c00l
 
Tutorial dan Pengenalan php
Tutorial dan Pengenalan phpTutorial dan Pengenalan php
Tutorial dan Pengenalan phpAlbertz Ace-Red
 
Berkenalan dengan bahasa php pemrograman web
Berkenalan dengan bahasa php   pemrograman webBerkenalan dengan bahasa php   pemrograman web
Berkenalan dengan bahasa php pemrograman webVicky Nitinegoro
 
Analisis Suatu Script Web
Analisis Suatu Script WebAnalisis Suatu Script Web
Analisis Suatu Script WebFajar Sany
 
Laporan praktikum web ke 5
Laporan praktikum web ke 5Laporan praktikum web ke 5
Laporan praktikum web ke 5sunubismel13
 
Web programming pertemuan 1
Web programming   pertemuan 1Web programming   pertemuan 1
Web programming pertemuan 1Iwan Tanjung
 
Mengenal script php 3
Mengenal script php 3Mengenal script php 3
Mengenal script php 3Ali Muntaha
 
Belajar php (pemula dasar)
Belajar php (pemula dasar)Belajar php (pemula dasar)
Belajar php (pemula dasar)Andi Irawan
 
Seminggu Belajar Laravel Sample
Seminggu Belajar Laravel SampleSeminggu Belajar Laravel Sample
Seminggu Belajar Laravel Sampleadnanpurnaya
 
0-Pengantar Pemrograman lanjut.pptx
0-Pengantar Pemrograman lanjut.pptx0-Pengantar Pemrograman lanjut.pptx
0-Pengantar Pemrograman lanjut.pptxBom Bom
 

Similar to pemrograman php ii (20)

265991658-Pengantar-PHP-ppt.ppt
265991658-Pengantar-PHP-ppt.ppt265991658-Pengantar-PHP-ppt.ppt
265991658-Pengantar-PHP-ppt.ppt
 
Modul praktikum algoritma
Modul praktikum algoritmaModul praktikum algoritma
Modul praktikum algoritma
 
TUGAS MANDIRI algoritma
TUGAS MANDIRI algoritmaTUGAS MANDIRI algoritma
TUGAS MANDIRI algoritma
 
Dasar PHP
Dasar PHPDasar PHP
Dasar PHP
 
Laporan pratikum iv web
Laporan pratikum iv webLaporan pratikum iv web
Laporan pratikum iv web
 
Semua tentang php
Semua tentang phpSemua tentang php
Semua tentang php
 
Php 1
Php 1Php 1
Php 1
 
Tutorial php
Tutorial phpTutorial php
Tutorial php
 
Tutorial dan Pengenalan php
Tutorial dan Pengenalan phpTutorial dan Pengenalan php
Tutorial dan Pengenalan php
 
Berkenalan dengan bahasa php pemrograman web
Berkenalan dengan bahasa php   pemrograman webBerkenalan dengan bahasa php   pemrograman web
Berkenalan dengan bahasa php pemrograman web
 
Analisis Suatu Script Web
Analisis Suatu Script WebAnalisis Suatu Script Web
Analisis Suatu Script Web
 
Laporan praktikum web ke 5
Laporan praktikum web ke 5Laporan praktikum web ke 5
Laporan praktikum web ke 5
 
MODUL_PHP_TIK_XII
MODUL_PHP_TIK_XIIMODUL_PHP_TIK_XII
MODUL_PHP_TIK_XII
 
Function dalam PHP
Function dalam PHPFunction dalam PHP
Function dalam PHP
 
Web programming pertemuan 1
Web programming   pertemuan 1Web programming   pertemuan 1
Web programming pertemuan 1
 
materi Php lanjutan
materi Php lanjutanmateri Php lanjutan
materi Php lanjutan
 
Mengenal script php 3
Mengenal script php 3Mengenal script php 3
Mengenal script php 3
 
Belajar php (pemula dasar)
Belajar php (pemula dasar)Belajar php (pemula dasar)
Belajar php (pemula dasar)
 
Seminggu Belajar Laravel Sample
Seminggu Belajar Laravel SampleSeminggu Belajar Laravel Sample
Seminggu Belajar Laravel Sample
 
0-Pengantar Pemrograman lanjut.pptx
0-Pengantar Pemrograman lanjut.pptx0-Pengantar Pemrograman lanjut.pptx
0-Pengantar Pemrograman lanjut.pptx
 

Recently uploaded

KONSEP DASAR ADVOKASI GIZI KEBIJAKAN PEMERINTAHAN
KONSEP DASAR ADVOKASI GIZI KEBIJAKAN PEMERINTAHANKONSEP DASAR ADVOKASI GIZI KEBIJAKAN PEMERINTAHAN
KONSEP DASAR ADVOKASI GIZI KEBIJAKAN PEMERINTAHANDevonneDillaElFachri
 
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Shary Armonitha
 
Contoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data miningContoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data miningSamFChaerul
 
514034136-Tugas-Modul-4-5-Komputer-Dan-Media-Pembelajaran.pptx
514034136-Tugas-Modul-4-5-Komputer-Dan-Media-Pembelajaran.pptx514034136-Tugas-Modul-4-5-Komputer-Dan-Media-Pembelajaran.pptx
514034136-Tugas-Modul-4-5-Komputer-Dan-Media-Pembelajaran.pptxAbidinMaulana
 
ASUMSI DAN KARAKTERISTIK AKUNTANSI SYARIAH.pptx
ASUMSI DAN KARAKTERISTIK AKUNTANSI SYARIAH.pptxASUMSI DAN KARAKTERISTIK AKUNTANSI SYARIAH.pptx
ASUMSI DAN KARAKTERISTIK AKUNTANSI SYARIAH.pptxAdrimanMulya
 
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxUKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxzidanlbs25
 
Salinan PPT TATA BAHASA Bahasa Indonesia
Salinan PPT TATA BAHASA Bahasa IndonesiaSalinan PPT TATA BAHASA Bahasa Indonesia
Salinan PPT TATA BAHASA Bahasa Indonesiasdn4mangkujayan
 
KISI KISI PSAJ IPS KLS IX 2324.docskskkks
KISI KISI PSAJ IPS KLS IX 2324.docskskkksKISI KISI PSAJ IPS KLS IX 2324.docskskkks
KISI KISI PSAJ IPS KLS IX 2324.docskskkksdanzztzy405
 
Perlindungan Anak Dalam Hukum Perdata (2).pdf
Perlindungan Anak Dalam Hukum Perdata (2).pdfPerlindungan Anak Dalam Hukum Perdata (2).pdf
Perlindungan Anak Dalam Hukum Perdata (2).pdfjeffrisovana999
 

Recently uploaded (11)

KONSEP DASAR ADVOKASI GIZI KEBIJAKAN PEMERINTAHAN
KONSEP DASAR ADVOKASI GIZI KEBIJAKAN PEMERINTAHANKONSEP DASAR ADVOKASI GIZI KEBIJAKAN PEMERINTAHAN
KONSEP DASAR ADVOKASI GIZI KEBIJAKAN PEMERINTAHAN
 
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
 
Abortion pills in Kuwait salmiyah [+966572737505 ] Get Cytotec in Kuwait city...
Abortion pills in Kuwait salmiyah [+966572737505 ] Get Cytotec in Kuwait city...Abortion pills in Kuwait salmiyah [+966572737505 ] Get Cytotec in Kuwait city...
Abortion pills in Kuwait salmiyah [+966572737505 ] Get Cytotec in Kuwait city...
 
Contoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data miningContoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data mining
 
514034136-Tugas-Modul-4-5-Komputer-Dan-Media-Pembelajaran.pptx
514034136-Tugas-Modul-4-5-Komputer-Dan-Media-Pembelajaran.pptx514034136-Tugas-Modul-4-5-Komputer-Dan-Media-Pembelajaran.pptx
514034136-Tugas-Modul-4-5-Komputer-Dan-Media-Pembelajaran.pptx
 
ASUMSI DAN KARAKTERISTIK AKUNTANSI SYARIAH.pptx
ASUMSI DAN KARAKTERISTIK AKUNTANSI SYARIAH.pptxASUMSI DAN KARAKTERISTIK AKUNTANSI SYARIAH.pptx
ASUMSI DAN KARAKTERISTIK AKUNTANSI SYARIAH.pptx
 
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxUKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
 
Salinan PPT TATA BAHASA Bahasa Indonesia
Salinan PPT TATA BAHASA Bahasa IndonesiaSalinan PPT TATA BAHASA Bahasa Indonesia
Salinan PPT TATA BAHASA Bahasa Indonesia
 
Abortion pills in Jeddah+966543202731/ buy cytotec
Abortion pills in Jeddah+966543202731/ buy cytotecAbortion pills in Jeddah+966543202731/ buy cytotec
Abortion pills in Jeddah+966543202731/ buy cytotec
 
KISI KISI PSAJ IPS KLS IX 2324.docskskkks
KISI KISI PSAJ IPS KLS IX 2324.docskskkksKISI KISI PSAJ IPS KLS IX 2324.docskskkks
KISI KISI PSAJ IPS KLS IX 2324.docskskkks
 
Perlindungan Anak Dalam Hukum Perdata (2).pdf
Perlindungan Anak Dalam Hukum Perdata (2).pdfPerlindungan Anak Dalam Hukum Perdata (2).pdf
Perlindungan Anak Dalam Hukum Perdata (2).pdf
 

pemrograman php ii

  • 1. 1 BAB I PENDAHULUAN A. Latar Belakang PHP adalah sebuah bahasa pemrograman yang didesain agar dapat disisipkan dengan mudah ke halaman HTML. PHP memberikan solusi sangat murah (karena gratis digunakan) dan dapat berjalan di berbagai jenis platform. Pada awalnya memang PHP berjalan di sistwm UNIX dan variannya, namun kini dapat berjalan dengan lancar di lingkungan system operasi windows. Suatu nilai tambah yang luar biasa karena proses pengembangan program berbasis web dapat dilakukan lintas system operasi. Dengan luasnya cakupan system operasi yang mampu menjalankan PHP dan ditambah begitu lengkapnya function yang dimilikinya (tersedia lebih dari 400 function di PHP yang sangat berguna) tidak heran jika PHP semakin menjadi tren di kalangan programmer web. Penemu bahasa pemrograman ini adalah Rasmus Lerdorf, yang bermula dari keinginan sederhana Ledorf untuk mempunyai alat bantu dalam memonitor pengunjung yang melihat situs web pribadinya. Inilah sebabnya pada awal pengembangannya, PHP merupakan singkatan dari Personal Home Page tools, sebelum akhirnya menjadi Hypertext Prepocessor. Antusias komunitas internet terhadap bahasa PHP ini begitu besar, sehingga Rasmus Ledorf akhirnya menyerahkan pengembangan PHP ini kepada sebuah tim pemrograman dalam rangka gerakan open source. Tim ini membangun kembali PHP dari awal dengan menulis ulang program parser PHP. Hasilnya adalah PHP 3.0 yang memiliki dukungan lebih luas terhadap database. PHP 4.0 sebagai versi lanjutan dari PHP 3.0 dirilis. Setelah itu, dengan menggunakan mesin scripting Zend untuk memberikan kinerja yang lebih capet dan lebih baik. Versi ini telah mampu mendukung server web selain Apache dan secara built-in telah mampu menangani menajemen session. Untuk dapat menjalankan script-script PHP, sebuah system harus mempunyai Apache Web server, PHP 4/PHP 5, dan database MySQL.
  • 2. 2 Ketiganya adalah program open source yang tersedia secara gratis di internet dan dapat berjalan di berbagai platform (windows maupun UNIX/Linux). B. Tujuan 1. Agar kita bisa mengetahui apa itu pemrograman PHP 2. Agar kita bisa mengimplementasikan aplikasi PHP 3. Mengetahui teknik-teknik dasar pemrograman PHP C. Rumusan masalah 1. Bagaimana menulis kode program PHP yang efektif dan efisien? 2. Bagaimana kita bisa memahami teknik-teknik dasar pemrograman PHP?
  • 3. 3 BAB II PEMBAHASAN A. Mencetak Output PHP menyediakan beberapa fungsi string untuk mencetak output ke browser, dua di antaranya yang sering digunakan adalah print( ) dan echo(). Kedua fungsi ini sebenarnya bukan fungsi riil, tetapi suatu konstruksi bahasa. Meskipun secara garis besar print() dan echo() memiliki tujuan sama, akan tetapi ada beberapa perbedaan esensial yang perlu diperhatikan. Fungsi print() berperilaku seperti fungsi pada umumnya, dan memiliki nilai kembalian (return value) berupa integer 1. Dengan demikian, print() dapat digunakan sebagai bagian dari ekspresi yang lebih kompleks. Sementara itu, echo()mempu menerima lebih dari satu parameter sekaligus, dan tidak memiliki nilai kembalian. print ‘String 1’; echo ‘String 1’; // Menggunakan beberapa parameter Echo ‘String 1’, “String 2”, ‘…’; Fungsi string echo() akan dieksekusi lebih cepat dibanding dengan print(). Perbedaan ini disebabkan fungsi print() akan mengembalikan status (integer) yang menyatakan apakah proses berhasil dilaksanakan atau tidak. Di sisi lain, echo() hanya menampilkan output saja dan tidak mengerjakan apa-apa lagi. Adapun dalam implementasinya, status nilai kembalian dari penggunaan fungsi string hampir tidak pernah diperlukan. B. Deklarasi Variabel dan Variabel Dinamis Tidak seperti bahasa lain (C, atau C++), variabel di PHP bisa digunakan meskipun belum dideklarasikan. Kita bisa menciptakan variabel kapan saja ketika memerlukan, kemudian menggunakannya. Variabel ini akan tetap eksis selama program dieksekusi.
  • 4. 4 Penamaan variabel harus diawali dengan tanda dollar($) dan diikuti oleh nama ringkas. Nama variabel tidak boleh diawali dengan angka, tapi bisa berisi angka dan karakter underscore (_). Untuk menghindari kesalahan dalam menggunakan variabel, perlu diketahui, nama variabel bersifat sensitive. // deklarasi dan inisialisasi variabel $result =1+5; // valid $RESULT =2+5; // valid, beda dengan $result $_result =3+5; // valid //deklarasi dan inisialisasi variabel $1 =1+5; // tidak valid $1res =2+5; // tidak valid $#res =3+5; // tidak valid $my-res =4+5; // tidak valid Tanda dollar berfungsi untuk membantu dalam membedakan variabel dengan fungsi dan keyword PHP. Tanda dollar adalah bagian dari nama variabel, atau bisa dikatakan sebagai suatu operator yang mangacu ke memori. Di PHP, bisa juga menciptakan nama variabel secara dinamis, yakni menggunakan sintaks variabel (double variabel). Variabel-variaebl mengambil nilai dari suatu variabel dan memperlakukannya seperti nama variabel. Contohnya seperti berikut : $a = “hello”; $$a = “world”; Tanda double dollar ($$) adalah sintaks yang digunakan untuk menuliskan suatu variabel. Variabel yang juga desebut variabel dinamis ini bisa dipanggil melalui dua cara. // Memanggil variabel dinamis echo “${$a}”; // mencetak world // ekuivalen dengan berikut: Echo “$hello”; // mencetak world
  • 5. 5 //memanggil semua (kedua) variabel Echo “$a $hello”; // mencetak hello world C. Mengelola variabel Dalam implementasi pembuatan kode program, secara garis besar ada tiga konstruksi bahasa yang digunakan untuk mengelola variabel, yaitu isset(), unset() dan empty() 1. Isset Isset() digunakan untuk menyatakan apakah suatu variaebl diset atau tidak. Apabila variabel sudah diset, isset() akan mengembalikan niali true, dan sebaliknya bernilai false. Begitu pula ketika variabel diinisialisasikan dengan nilai NULL, isset() akan mangembalikan nilai false. 2. Unset Unset() merupakan kebalikan dari isset(), yakni meng-unset variabel, dan membebsakan memori yang sudah digunakan, jika tidak ada variabel yang mengacu nilainya. Pemanggilan isset() pada variabel yang sudah di- unset akan mengembalikan nilai false. 3. Empty Pada umumnya, empty() sering digunakan untuk memeriksa apakah variabel form tidak dikirim atau tidak berisa data.Berbeda dengan isset(), yang mengembalikan false pada variabel yang di-unset, empty() akan mengembalikan nilai true. D. Fungsi/Method Fungsi, atau method di paradigma objek, adalah blok kode yang dapat didefinisikan kemudian dipanggil (di-invoke) dari bagian lainprogram. Penggunaan frungsi dapat menjadikan kode program lebih moduler. Fungsi menyediakan kemampuan yang lebih baik bagi struktur kode agar dapat digunakan ulang (reusable). Sebagai pemrogram, harus bisa manganalisa, kapan harus menggunakan fungsi dan kapan tidak mengunakannya. Sebagai, untuk kode-
  • 6. 6 kode yang sama dan sering digunakan, tentu akan lebih praktis dijadikan suatu fungsi. Contoh: /* Mendapatkan jam dari system Dengan format 0-23 */ $time = date (“G”); If ($time < 12 ) { $say = ‘good morning..’; } elseif ($time < 17) { $say = ‘good afternoon..’; } else { $say = ‘good evening..’; } Echo $say; Pada saat fungsionalitas kode di atas diperlukan kembali, akan menulis ulang kode yang kenyataannya sama. Agar lebih efektif dan efisien, lebih praktis jika kode di atas dijadikan kode sebagai suatu fungsi. Function greeting ($tNow) { If (!$tNow) return ‘’; If ($tNow < 12 ) return ‘good morning..’; If ($tNow < 17 ) return ‘good afternoon..’; If ($tNow > 17 ) return ‘good evening..’; } // memanggilfungsi Echo greeting ($time); Dalam pengembangan aplikasi web, sebaiknya menghindari penulisan ulang fungsi pre-defined PHP. Lain halnya jika fungsi memiliki fungsionalitas khusus, dan penulisan ulang fungsi PHP diperlukan untuk mendukung implementasi fungsi. Contoh penulisan ulang PHP : // menulis ulang fungsi strlen Function getLength($str) { Return strlen($str); }
  • 7. 7 // Mengembalikan panjang srting Echo getLength (‘hello’); Penulisan ulang fungsi-fungsi PHP mengakibatkan kode program susah dibaca oleh user. Disamping itu, yang lebih penting, penulisan ulang fungsi PHP di dalam fungsi user defined akan memerlukan waktu tambahan saat eksekusi sehingga menjadiak kode labih lambat. E. Passing by Reference Secara default, melewatkan (passing) argument pada suatu fungsi menggunakan value. Mekanisme yang dikenal sebagai passing-by-value ini, pada teknisnya, meng-copy nilai argument yang di-pass tersebut ke dalam variable local. Mekanisme lain dalam passing argumen adalah passing-by- reference. Passing melalui referensi (reference) mengizinkan untuk menghindari pekerjaan pengembalian variable dan mengassign nilai ke variable aslinya. Ini akan bermanfaat ketika ingin memodifikasi nilai argument dengan fungsi tersebut. Untuk melakukan passing melalui referensi, tambahkan operatot dan pada vaiabel yang manjadi argument. Contohnya seperti berikut // passing variable $str by referece Function setHTMLTag (&$str, $tag = ‘b’) { $str = “<$tag>$str</$tag>”; } $myStr = “Hello”; seHTMLtag($myStr); echo $myStr; //men-set tag h1 setHTMLTag ($myStr, ‘h1’); echo $myStr; Dalam kasus ini, argument yang berupa variable $str akan di=-pass by reference. Di sini tidak perlu mendefinisikan nilai kembalian karena nilai aslinya sudah dimodifikasi.
  • 8. 8 Selain passing argument, juga bias mengembalikan nilai melalui referensi, bukan melalui nilai. Penulisan fungsi untuk implementasi ini hamper sama dengan passing, tetapi operator dan diletakkan sebelum nama fungsi. Function &setHTMLTag ($str, $tag = ‘b’ ) { //return valueby reference Return “<$tag>$str</$tag>”; } $mystr = “hello”; $bold =& setHTMLTag($mySTr); Echo $bold; //men-set tag h1 $head =& setHTMLtag($myStr, ‘h1’); Echo $head; Perhatikan operator assignment yang digunakan di sini adalah =&, bukan operator =, jika menggunakan operator =, maka PHP akan meng-assign value, bukannya mengacu (me-refer). Perlu diketahui, contoh di atas sekedar menggambarkan penggunaan referensi referensi. Bagaimanapun juga, penting sekali untuk memahami pendekatan berbasis referensi karena sering menimbulkan kesalahan dalam menginterpretasikannya, terutama ini terkait dengan masalah performansi. Untuk lebih jelasnya, simak pembahasan mengenai Optimasi dan Performansi. F. Statement if else Pernyataan kondisional seperti if dan switch mengizinkan blok kode yang berbeda untuk dieksekusi b ergabtung pada keadaan saat dieksekusi. Kondisi pada pernyataan if dapat berupa ekspresi apa pun, yang dievaluasi ke nilai Boolean (true atau false). Pada umumnya, pernyataan akan diletakkan ke dalam suatu blok dan diapit oleh tanda kurung kurawal.
  • 9. 9 Contoh: $pass = ‘okey’; If ($pass == ‘oke’) } Echo ‘OKE <br> ‘; } else { Echo ‘NOT OKE <br>’; } // Hasil : NOT OKE Untuk menyederhanakan logika pemrograman, bisa menggunakan operator ternary (?) ketika membuat pernyataan kondosional if else seperti contoh di atas. Dengan menggunakan operator ternary, kode diatas bisa diringkas menjadi: $pass = ‘Okey’; Echo ($pass == ‘oke’) ? ‘OKE’ : ‘NOT OKE’; // hasil : NOT OKE Sederhananya, disini cukup berpedoman pada operator ? dan :. Dimana, pernyataan setelah ? akan dieksekusi jika kondisi terpenuhi, dan sebaliknya pernyataan setelah : yang dieksekusi. Terkait dengan penggunaan pernyataan kondisional if, ada hal “kecil” yang perlu diperhatikan karena sangat mungkin menimbulkan maslah besar. Bayangakan jika kode diatas digunakan untuk verifikasi password, kemudian keliru menulisakn operator == menjadi =, apa yang terjadi??? Tentu saja string “oke” akan di-assign ke variabel $pass, dan menjadikan nilai variabel $pass sama dengan “oke”l Untuk menghindari kesalahan,ada trik sederhana yaitu: $pass = ‘okey’; Echo ($pass == ‘oke’) ? ‘OKE’ : ‘NOT OKE’; // hasil : NOT OKE // perhatikan operator untuk komparasi…!! $pass1 = ‘Okey’; Echo ($pass1 = ‘oke) ? ‘OKE’ : ‘NOT OKE’; // hasil : OKE $pass2 =’okey’; Echo (‘oke’ = $pass2) ? ‘OKE’ : ‘NOT OKE’; // Hasil : pesan error, kode tidak dieksekusi
  • 10. 10 Meskipun kode pada baris terakhirdi atas akan menghasilkan pesan kesalahan ketika menuliskan operator komparsi, tetapi tidak sampai berakibat meloloskan string password yang tidak valid. Alternatif lain untuk melakukan komparasi adalah menggunakan operator ===(identik). Operator ini akan mengembalikan nilai true apabila operand yang dibandingkan memiliki nilai dan tipe sama. Ini berbeda sekali dengan operator ==, yang mengembalikan true jika nilai operand sama meskipun tipe datanya berbeda. G. Tanda Kutip Pada String Parser PHP menentukan string-string dengan mencari pasangan tanda kutip. Oleh karena itu, semua string harus diawali dan diakhiri dengan tanda kutip yang sama, yaitu tunggal atau ganda. PAbila suatu string diapit oleh tanda kutip yang berbeda, parser PHP tidak akan menguraikan string tersebut. Perbedaan penggunaa tand kutip tunggal dan ganda terletak pada fitur yang disediakan, termasuk sintaks penulisan untuk variabel spesifik. Tand kutip ganda mangizinkan penggunaan karakter-karakter khusus, seperti /n, /t, /r, sedangkan tanda kutip tunggal ridak. Selain itu, ketika menggunakan variabel di dalam string, teras bahwa tand kutip ganda menawarkan cara yang lebih mudah. $thn = date (“Y”); Echo “Tahun $thn sekarang”; //hasil : tahun 2006 sekarang Echo “Tahun ($thn) sekarang”; //hasil : tahun 2006 sekarang Echo ‘Tahun $thn sekarang’; //hasil : tahun 2006 sekarang Echo ‘tahun ‘.$thn.’ Sekarang’; //hasil : tahun 2006 sekarang Penggabungan string dan variabel pada fungsi string echo() yang menggunakan tanda kutip tunggal dilakukan dengan memanfaatkan operator konkatenasi (.). Untuk string dengan tanda kutip ganda, selain menggabungkan langsung, bisa manggunakan tand kurung kurawal. Tanda
  • 11. 11 kurung kurawal ini umumnya dgunakan untuk mengacu ke variabel yang kompleks, misalnya mengandung array. String dengan tanda kutip tunggal dan ganda ditangani secara berbeda oleh PHP. String yang digunakan tanda kutip ganda akan diinterpretasi, sedangkan string dengan tand kutip tunggal tidak diinterpretasi dan secara langsung diperlakukan sebagai string. Akibatnya, kode yang menggunakan tanda kutip tunggal akan berjalan sedikit lebih cepat dibandingkan kode tanda kutip ganda. H. Manajemen String Salah satu kasus sederhana terkait manajemen string adalah pembentukan string yang akan ditampilkan. Sebagai contoh, Kita memiliki string yang cukup panjang. Selanjutnya, agar memudahkan penulisan dan pembacaan kode, kita ingin memotong string ke dalam beberapa bagian. Contoh: Echo ‘string1’; Echo ‘string2’; Echo ‘string3’; Kode di atas memang akan bekerja, tapi hasilnya kurang efisien. Sebagai solusinya, gunakan tanda titik sebagai operator konkatensi (atau disebut operator dot). Hasilnya: // eksekusi lebih cepat $str = ‘string1’; $str .= ‘string2’; $str .= ‘string3’; Echo $str; Dengan menjadikan bagian-bagian string ke dalam satu variabel string, akan mengakibatkan pemrosesan dilakukan lebih cepat dibanding kode sebelumnya.
  • 12. 12 I. Operasi Array Pembacaan elemen array merupakan kategori operasi dasar yang umum dilakukan. Adapun teknik yang sering digunakan adalah melakukan looping untuk mendapatkan elemen-elemen array. Meskipun operasi ini terlihat sepele, akan tetapi bisa menimbulkan kerugian jika tidak dilakukan dengan baik dan benar. Contoh $arr = array ( ‘PHP’ , ‘javascript’. ‘ASP’, ‘HTML’ ); // Kurang efisien // Recounting array tiap looping For ($i=0; $i<count ($arr); $i ++) { Echo $arr[$i]. ‘<br>’; } Kode di atas memang akan bekerja seperti yang diharapkan, tapi tidak efisien sekali. Dimana setiap melakukan looping, kode akan mancari jumlah eleman array sehingga memboroskan sumber daya. Untuk cara yang lebih efisien, terlebih dahulu cari jumlah eleman array, baru kemudian dijadikan ekspresi loop for. Ada kalanya, mungkin perlu mengkonversi string array, dan sebaliknya, array ke string. Kasus ini bisa diselesaikan dengan mudah melalui fungsi implode() dan explode() J. Swapping Variabel Dalam kasus penukaran (swaaping) variabel, umumnya menggunakan bantuan variabel temporary. Tekniknya sderhana sekali, miaslnya variaebl x di-assign ke variabel temporary, kemudian variabel y di-assign ke x, dan variabel temporary di-assign ke-y. Akhirnya penukaran berhasil seperti yang diharapkan. Sebenernya, dalam melakukan swapping variabel, tidak harus memerlukan bantuan variabel temporary. Solusinya adalah dengan memenfaatkan konstruksi bahasa list() dan array().
  • 13. 13 K. Kode yang manageable Walaupun diperbolahkan mencampur kode PHP dan HTML, tetapi perlu diperhatikan strateginya. Adapun strategi yang baik adalah memisahkan kode PHP dan HTML. Tekniknya, ketika ingin menampilkan dokumen HTML, akhiri kode PHP menggunakan tag penutup. Contoh : <?php ……. ……. If (count(@$errors) > 0) { ?> <form action=”<?$_SERVER[‘PHP_SELF’]?>” Method=POST> <table> <tr> <td>tgl lahir</td> <td.<input name=”tgl” Value=”<?php echo @$_post[‘tgl’];?>”></td> <td><?php echo $warnings[‘tgl’];></td> </tr> </table> <input value=”submit”> </form> <?php } else { //count < 0 ……. ……. } ?> Potongan kode program di atas lebih mudah dikelola (manageable), dibanding menanamkan kode HTML kedalam kode PHP. Disamping itu, kode seperti itu memungkinkan dilakukannya eksekusi yang lebih cepat. Secara garis besar, ketika web server membaca halaman web, perser PHP akan mencari tag untuk diterjemahkan sebagai kode PHP> Begitu tag ditemukan, parser akan mengeksekusi kode program sampai berakhir pada tag penutup. Selabihnya, yang diluar tag PHP dianggap bukan kode PHP sehingga juga tidak diproses oleh parser.
  • 14. 14 Kode-kode PHP akan dilayani oleh web server (apache) 2-10 kali lebih lambat disbanding halaman HTML statis. Oleh karena itu, jika performansi merupakan masalah sensitive, gunakan kode PHP seperlunya. Dengan kata lain, jangan “menanam” kode-kode HTML di dalam kode PHP. L. Membaca dan Mengatur File Konfigurasi Konfigurasi PHP diatur sepenuhnya oleh file bernama php.ini, yang dibaca setiap start-up. Sederhananya, perilaku dari PHP sangat ditentukan oleh konfigurasi directive-directive dip hp.ini. Apabila tidak memiliki akses langsung ke file php.ini, gunakan fungsi ini-set() (atau ini_alter()) untuk menetapkan konfigurasi baru. Parameter yang diperlukan adalah nama directive dan nilai konfigurasi. Konfigurasi seperti ini hanya berlaku saat runtime kode saja, dengan kata lain, tidak melakukan pengubahan secara permanent. Begitu kode selesai dieksekusi, konfigurasi akan dikembalikan seperti semula. Disamping itu, tidak semua directive bisa diset saat runtime menggunakan ini_set(). Untuk lebih jelasnya lihat di dokumentasi PHP. Apabila hanya ingin mencari informasi konfigursai directive tertentu tanpa mengubah nilainya, gunakan fungsi ini_get(). Adapun untuk semua konfigurasi, gunakan fungsi ini_get_all().
  • 15. 15 BAB III PENUTUP A. Kesimpulan Teknik dasar pemrograman PHP meliputi penulisan sintaks, deklarasi variabel, pembuatan fungsi user-defined (UFDF), dan penggunaan fungsi- fungsi dasar. Tidak bisa dipungkiri, konsep-konsep ini merupakan salah satu kunci yang mendasari konsekuen pengembanagn aplikasi PHP. Pada dasarnya PHP menyediakan beberapa fungsi string, dianataranya print() dan echo(), Fungsi print() berperilaku seperti fungsi pada umumnya, dan memiliki nilai kembalian (return value) berupa integer 1. Dengan demikian, print() dapat digunakan sebagai bagian dari ekspresi yang lebih kompleks. Sementara itu, echo()mempu menerima lebih dari satu parameter sekaligus, dan tidak memiliki nilai kembalian. Penamaan variabel harus diawali dengan tanda dollar($) dan diikuti oleh nama ringkas. Nama variabel tidak boleh diawali dengan angka, tapi bisa berisi angka dan karakter underscore (_). Untuk menghindari kesalahan dalam menggunakan variabel, perlu diketahui, nama variabel bersifat sensitive. Tanda dollar berfugsi untuk membantu dalam membedakan variabel dengan fungsi dan keyword PHP. Tanda dollar adalah bagian dari nama variabel, atau bisa dikatakan sebagai suatu operator yang mangau ke memori. Di PHP, bisa juga menciptakan nama variabel secara dinamis, yakni menggunakan sintaks variabel (double variabel). Variabel-variaebl mengambil nilai dari suatu variabel dan memperlakukannya seperti nama variabel. Dalam implementasi pembuatan kode program, secara garis besar ada tiga konstruksi bahasa yang digunakan untuk mengelola variabel, yaitu isset(), unset() dan empty() Fungsi, atau method di paradigma objek, adalah blok kode yang dapat didefinisikan kemudian dipanggil (di-invoke) dari bagian lainprogram. Penggunaan frungsi dapat menjadikan kode program lebih moduler. Fungsi menyediakan kemampuan yang lebih baik bagi struktur kode agar dapat digunakan ulang (reusable).
  • 16. 16 Secara default, melewatkan (passing) argument pada suatu fungsi menggunakan value. Mekanisme yang dikenal sebagai passing-by-value ini, pada teknisnya, meng-copy nilai argument yang di-pass tersebut ke dalam variable local. Mekanisme lain dalam passing argumen adalah passing-by- reference. Pernyataan kondisional seperti if dan switch mengizinkan blok kode yang berbeda untuk dieksekusi b ergabtung pada keadaan saat dieksekusi. Kondisi pada pernyataan if dapat berupa ekspresi apa pun, yang dievaluasi ke nilai Boolean (true atau false). Pada umumnya, pernyataan akan diletakkan ke dalam suatu blok dan diapit oleh tanda kurung kurawal.