Selasa, 02 April 2013

PENGENALAN PHP

I.      UMUM
Web pada awalnya sangat menjemukan bagi orang-orang yang dinamis. Bagaimana tidak, pemakainya hanya dicekoki oleh isi (content) halaman web yang meskipun bersifat saling terhubung dengan halaman web yang lain (hyperlink) tetap saja tidak memberikan saluran bagi pengguna yang ingin mengemukakan pendapatnya. Tidak ada demokrasi, karena pengguna hanya bersifat pasif dan tidak bisa berinteraksi secara aktif dalam web. Ketika akhirnya ditemukan tag <FORM> barulah kejemuan dan kebuntuan yang ada menjadi sirna. Pengguna menjadi bisa secara aktif berinteraksi dengan halaman web, dan mulailah era aplikasi berbasis web yang dinamis.

Berbagai macam bahasa pemrograman yang berbasis web saat ini, yang menawarkan dengan segala kelebihan dan kekurangan yang ada terutama bahasa pemrograman web dinamis. Untuk menjadi programmer handal harus dapat memilih dan menguasai bahasa pemrograman yang mengikuti perkembangan-perkembangan teknologi khususnya bahasa pemrograman yang berbasis server (server side scripting), misalnya bahasa ASP (Active Server Page), Cold Fusion, JSP (Java Server Page), Perl ataupun PHP. 
PHP (PHP : Hypertext Prepocessor)  tergolong sebagai perangkat lunak open source yang diatur dalam aturan General Purpose Licenses (GPL) dan dapat digunakan di berbagai Sistem Operasi seperti Linux, Unix, Macintosh dan Windows.

II.     SEJARAH PHP
Rasmus Lerdorf adalah bapak penemu awal bahasa PHP ini, yang bermula dari keinginan sederhana Rasmus Lerdorf untuk mempunyai alat bantu (tools) dalam memonitor pengunjung yang melihat situs web pribadinya. Inilah sebabnya pada awal pengembangannya, PHP merupakan singkatan dari Personal Home Page tools, sebelum akhirnya dipaksakan menjadi singkatan rekursif dari PHP: Hypertext Preprocessor.
Pertengahan tahun 1995 dirilis PHP/FI (FI adalah singkatan dari Form Interpreter) yang memiliki kemampuan dasar membangun aplikasi web, memproses form, dan mendukung database mSQL. Pada perkembangannya, kode tersebut dirilis ke umum sehingga mulai banyak dikembangkan oleh programmer diseluruh dunia.
Pada Tahun 1997 PHP 2.0 dirilis, pada versi ini sudah diintegrasi pada bahasa pemrograman C dan dilengkapi dengan modulnya sehingga kualitas kerja PHP meningkat secara signifikan. Pada tahun ini juga sebuah perusahaan yang bernama Zend (akronim dari pengembangnya, Zeev Suraski dan Andi Gutmans) merilis ulang PHP dengan menggunakan mesin scripting Zend  untuk memberikan kinerja yang lebih bersih, baik dan cepat.
Pada tahun 1998 PHP 3.0 diluncurkan, kualitas dan kestabilan kecepatan ditingkatkan dan memiliki dukungan lebih luas lagi terhadap database yang ada termasuk MySQL dan Oracle.
Pada tahun 1999 PHP 4.0 dirilis. PHP verfsi ini paling banyak digunakan pada awal abad 21 karena sudah mampu membangun web komplek dengan stabilitas kecepatan yang tinggi.
Pada tahun 2004, Zend merilis PHP 5.0. Dalam versi ini initi dari interpreter PHP mengalami perubahan besar. Versi ini juga memasukkan model pemrograman berorientasi objek kedalam PHP untuk menjawab perkembangan ke arah paradigma berorientasi objek.
Pada saat ini PHP versi 6.0 sudah support terhadap unicode, juga banyak fitur penting lainnya ditambahkan, antara lain :
1.         Support Unicode, lebih mudah untuk membangun dan memelihara aplikasi.
2.         Perbaikan keamanan.
3.         Fitur dan konstruksi baru, sejumlah fitur sintaks baru ditambahkan seperti :
-       64-bit integer type.
-       Membangun perulangan untuk array multidimensi.
-       Serta dukungan untuk labeled breaks.




III.     PENGERTIAN PHP
PHP (PHP: Hypertext Preprocessor). Yaitu bahasa pemrograman web server-side yang bersifat open source. PHP merupakan script yang terintegrasi dengan HTML dan berada pada server (server side HTML embedded scripting). PHP adalah script yang digunakan untuk membuat halaman website yang dinamis. Dinamis berarti halaman yang yang akan ditampilkan dibuat saat halaman itu diminta oleh client. Mekanisme ini menyebabkan informasi yang diterima client selalu yang terbaru/up to date. Semua script php dieksekusi pada server dimana script tersebut dijalankan.
Konsep pemrograman dengan PHP ini sedikit berbeda dengan pemrograman dengan menggunakan script CGI yang memaksa kita untuk selalu menulis kode yang menghasilkan keluaran dalam format HTML. Pada PHP, kita diberikan kebebasan untuk menyisipkan kode PHP di mana pun pada halaman HTML biasa dan menjalankan kode PHP tersebut setiap ada permintaan terhadap halaman tersebut. Interpreter PHP dalam mengeksekusi kode PHP pada sisi server (disebut server-side) dan berbeda dengan mesin maya Java yang mengeksekusi program pada sisi client (client-side). Proses eksekusi kode PHP yang disisipkan pada halaman HTML secara diagram dapat digambar sebagai berikut.







IV.    KEUNGGULAN PHP
Beberapa keunggulan yang dimiliki bahasa pemrograman PHP adalah :
1.      Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak melakukan sebuah kompilasi dalam penggunaanya.
2.         Kesederhanaan (simplicity). User yang baru belajar pemrograman sangat mudah untuk belajar membuat aplikasi web PHP. Selain itu PHP memiliki banyak sekali fungsi built-in untuk menangani kebutuhan standar pembuatan aplikasi web. Dengan adanya fungsi-fungsi tersebut, maka proses pembelajaran dan pembuatan aplikasi akan jauh lebih mudah karena semua sudah tersedia, kita sebagai user tinggal menggunakan dan mengembangkannya.
3.     Dalam sisi pemahaman, PHP adalah bahasa script yang paling mudah karena memiliki referensi yang banyak tersedia.
4.         PHP adalah bahasa open source yang dapat digunakan disemua platform sistem operasi, seperti : Linux, Unix, Macintosh dan Windows. PHP dapat dijalankan secara runtime melalui console serta dapat menjalankan perintah-perintah sistem. Open source berarti kode-kode terbuka untuk umum tersedia dengan gratis tanpa harus membayar lisensi, sehingga memungkinkan komunitas milis-milis dan developer melakukan perbaikan, pengembangan dan menemukan bug dalam bahasa PHP.
5.    Web Server yang mendukung PHP dapat ditemukan dimana-mana, mulai dari Apache, IIS, Lighttpd, hingga Xitami dengan configurasi yang relatif lebih mudah.
6.       PHP juga dilengkapi dengan berbagai pendukung lain seperti support langsung ke berbagai database yang populer, misal :
  • Adabas D
  •  dBase
  • Empress 
  • File pro (read only)
  • FrontBase
  • Hyperwave
  • IBM DB2 
  • Informix
  • Interbase
  • MSQL
  • PostgreSQL
  • MySQL
  • Oracle (OC17 dan OC18) dll.



V.      DASAR PEMROGRAMAN PHP
1.         Sintaks Dasar PHP
a.        HTML Escaping
PHP mempunyai tags, tag pembuka (“<?php”) atau (“<?”) dan penutup (“?>”). Yang berarti bahwa PHP akan menterjemhakan baris-baris kode/perintah yang berada dalam tanda tersebut, untuk baris-baris kode/perintah diluar tanda tersebut akan diabaikan, contoh :
<div>Ini akan diabaikan.</div>
<?php
echo “Yang ini akan di parse atau diterjemahkan.”;
?>
<p> Ini akan diabaikan juga.</p>
Ada 4 jenis penulisan pasangan tag pembuka dan penutup berbeda yang bisa digunakan pada PHP, antar lain :
1)        <?php .... ?>
2)        <script language=”php”> ..... </script>.
3)        <? ..... ?> atau short tags.
4)        <% ..... %> atau ASP style tags.
Kita dapat memilih salah satu keempat cara penulisan tag pembuka dan penutup diatas tetapi yang sering digunakan adalah pada cara no 1 dan 3, perlu diperhatikan cara penulisan yaitu :
1)      Harus diawali tanda <?php dan diakhiri tanda ?>.
2)      Tiap akhir baris harus selalu diberi tanda titik koma (;).
3)      PHP bersifat case sensitive artinya penulisan huruf besar dan kecil pada kode PHP sangat berpengaruh.

b.        Komentar atau Remarks.
Terkadang kita membutuhkan beberapa baris keterangan program yang sering disebut remarks, teks yang tidak ikut dieksekusi oleh server. Cara penulisannya sebagai berikut :
1)        Jika remarks hanya 1 baris gunakan tanda “//” atau “#”.
2)        Jika remarks terdiri dari beberapa baris yang berurutan maka lebih efektif menggunakan tanda “ /* ..... */ ”.
Contoh :
<html>
<body>
<?php
echo "Hallo PHP";
//ini komentar, tidak akan dieksekusi
?>
</body>
</html>
2.         Tipe Data
PHP mendukung delapan jenis tipe data, antara lain :
a.        Tipe Scalar. Tipe scalar tidak bisa dipecah lagi menjadi bagian yang lebih kecil, yaitu :
1)     Boolean. Tipe ini baru dikenalkan pada php versi 4. Tipe ini memiliki dua nilai yaitu TRUE or FALSE.  Kedua nilai ini dapat ditulis tanpa memperhatikan huruf besar ataupun kecil. Tipe ini biasanya digunakan untuk menguji suatu ekspresi bersyarat. Adapun nilai TRUE atau FALSE dapat dinyatakan dengan suatu nilai pada tipe data lainnya.
Contoh :
<?php
$ada = true;
if($ada == TRUE){
echo "NIM ada terdaftar dalam database kami";
} else {
echo "Maaf NIM anda tidak terdaftar";
}
?>
2)      Integer. Tipe ini merupakan tipe bilangan bulat.
Contoh bilangan bulat : -1 , 0 , 1 , 2 , 100 . Untuk menyatakan suatu nilai bilangan bulat kita bisa menggunakan format desimal, octal maupun hexadesimal.
Contoh penulisan nilai integer pada berbagai format :
$a = 1234; # desimal
$a = -123; # negatif desimal
$a = 0123; # octal (sama dengan 83 dalam desimal)
$a = 0x1A; # hexadecimal (sama dengan 26 dalam desimal)
3)     Float. Tipe ini merupakan tipe bilangan real. Pada bahasa pemrograman seperti C/C++, tipe float terdiri dari single, double. Pada php jangkauan float juga tergantung pada platform yang digunakan, dimana maksimum bisa mencapai 1.8e308 dengan presisi 14 digit (64 bits).
Contoh penulisan nilai float :
$a = 1.234;
$a = 1.2e3;
$a = 7E-10;
4)     String. String merupakan kumpulan karakter. Pada php karakter sama dengan tipe bilangan byte yang mana memiliki 256 karakter berbeda. Panjang dari string yang dapat dibuat dibatasi oleh ukuran memori komputer kita. Jadi panjang string tak terbatas sepanjang memori kita mencukupi. Penulisan string pada php dapat diapit dengan tanda petik tunggal (') atau petik ganda (") .
Contoh penulisan string :
$untai = 'Ini merupakan untaian karakter';
$rantai = "ini juga berupa string";
Karakter Escape :

b.        Tipe Compound/Tipe campuran.
1)     Array. Array adalah sebuah data yang mengandung satu atau lebih data, dan dapat diindek berdasarkan numerik maupun string. Pada php tipe masing-masing data variable array tidak harus sama dan variable array juga bisa menyimpan suatu variable array didalamnya. Array dapat dibuat dengan menggunakan fungsi array() atau list().
Sintak dari fungsi array() :
$a = array( 1 => 'one', 2 => 'two', 3 => 'three' );
Contoh :
$list[10] = "22992000";
// data index 10 akan bernilai "22992307"
Yang perlu diingat besar dari array dapat berubah saat run time. Contoh penggunaannya :
$list[10] = "22992200"; // nilai data berindex 10 = "22992200"
$list[] = "22992307"; // nilai data berindex 11 = "22992307"
Array multidimensi :
$matrik[3][3] = 12; // elemen baris 3 kolom 3 = 12
$matrik[3][4] = 11; // elemen baris 3 kolom 4 = 11
untuk membaca isi suatu array secara iterative dapat digunakan fungsi foreach();
2)      Object.
PHP mendukung pemrograman berorientasi-objek (OOP). OOP  menawarkan perbaikan desain modular, menyederhanakan debugging dan juga pemeliharaan. Class merupakan bagian dari desain berorientasi-objek. Sebuah class adalah satu definisi dari sebuah struktur yang berisi properti (variabel) dan metoda (fungsi). Cobalah anda buat script berikut:
<?
class memasak_air{
      function memasak(){
return "Sediakan peralatan memasak, tuangkan air ke dalam panci kemudian rebuslah air hingga mendidih.";
}
}
$obj=new memasak_air;
echo "Cara memasak air adalah&nbsp;".$obj->memasak();   
?>
c.         Tipe Special/khusus.
1)      Resource.
Resource boleh dikatakan sebagai pendeklarasian koneksi database. Perhatikan script berikut :
<?
$sql = mysql_query("SELECT * FROM admin WHERE un_admin='$us'") ;
$b = mysql_fetch_array($sql);
if($b==0){           
?>
<script language="javascript">alert('Gagal menyimpan sandi baru, cobalah kembali!'); document.location='admin.php?action=sandi_baru'</script>
<??>
2)      Null.
Tipe data null merepresentasikan sebuah variabel yang tidak mempunyai nilai apapun.  Contoh :
<?
$kosong=NULL;
?>
3)      Juggling.
Tipe juggling kemungkinan tidak dimiliki oleh bahasa pemrograman lain. Pemakaian tipe juggling dapat memudahkan programmer, tetapi bisa juga membahayakan jika tidak berhati-hati dalam penggunaannya, karena nilai yang dihasilkan tidak sesuai dengan yang diharapkan.
<?php 
    # $foo adalah string 
    $foo = "0"
     
    # $foo sekarang menjadi Integer karena ditambah 2 
    $foo += 2;     
     
    # $foo sekarang menjadi Float/Real 
    $foo = $foo + 1.3
     
    # $foo menjadi integer (15) 
    $foo = 5 + "10 dan sedikit string"
     
    # $foo menjadi string "510 dengan String" 
    $foo = 5 . "10 dengan String"
     
    # $foo menjadi Array("ini Array") 
    $foo[0] = "ini Array"
?> 

4)     Casting. Tipe casting bekerja seperti bahasa C, yaitu mengkonversi tipe data. Penggunaan tipe casting adalah dengan memberikan tanda kurung buka dan kurung tutup terhadap tipe yang diinginkan dan diletakkan sebelum nama variabel yang akan dikonversikan.
<?php
$foo = 10; // $foo adalah integer
$bar = (boolean) $foo; // $bar adalah boolean
?>
Adapun CAST yang diperbolehkan dalam PHP antara lain:
·         (int), (integer) - cast ke integer
·         (bool), (boolean) - cast ke boolean
·         (float), (double), (real) - cast ke float
·         (string) - cast ke string
·         (array) - cast ke array
·         (object) - cast ke object
Tab dan spasi masih bisa digunakan dalam tipe data perubahnya.
Contoh penggunaan CAST:
<?php
$foo = 10; // $foo adalah integer
$str = "$foo"; // $foo adalah string
$fst = (string) $foo; // $fst juga string
// === perbandingan identik,
// bernilai benar jika nilai dan tipenya sama.

if ($fst == $str) {
   echo "Keduanya sama";
// Hasil cetaknya adalah "Keduanya sama"
}
?>

<?php
$foo = 10; // $foo adalah integer
$bar = (float) $foo; // type data variable $bar menjadi float
echo $bar;

$var = 'ciao';
$arr = (array) $var;
echo $arr[0]; // Keluarannya adalah 'ciao'
?>
3.         Variabel
Variabel di PHP diawali dengan tanda dollar ($) diikuti dengan nama variabel. Nama variabel adalah case-sensitive, artinya huruf besar dan huruf kecil adalah berbeda. Contoh :
<html>
<body>
<?php
$teks="Hello World";
echo $teks; //Hasilnya Hello World
?>
</body>
</html>
Untuk menggabungkan dua variabel atau lebih gunakan operator titik (.) atau langsung ditulis diantara tanda kutip, contoh :
<?php
$txt1 = "Hello World";
$txt2 = "1234";
$nama = "Desrizal";
echo $txt1."-".$txt2 ;         //Hasilnya Hello World-1234
echo "Nama saya : $nama";      //hasilnya Nama saya : Desrizal
?>
a.        Operator Aritmatika
Operator
Deskripsi
Contoh
Hasil
+
Penambahan
3 + 4
7
-
Pengurangan
12 - 6
6
*
Pengalian
3 * 3
9
/
Pembagian
4 / 2
2
%
Modulus (sisa hasil pembagian)
5 % 2
10 % 8
10 % 2
1
2
0
++
Penambahan satu satu
x = 6
x++
x = 7
--
Pengurangan satu satu
x = 9
x--
x = 8

Contoh :
<?php
$x = 10;
$y = 4;
$a = $x + $y;
echo $a."<br>";        //hasilnya 14
$b = $x - $y;
echo $b."<br>";        //hasilnya 6
$c = $x * $y;
echo $c."<br>";        //hasilnya 40
$d = $x / $y;
echo $d."<br>";        //hasilnya 2.5
$e = $x % $y;
echo $e."<br>";        //hasilnya 2
?>
b.        Operator Pembanding
Operator
Deskripsi
==
Sama dengan
!=
Tidak sama dengan
Lebih besar dari
Lebih kecil dari
>=
Lebih besar sama dengan
<=
Lebih kecil sama dengan
Contoh :
<?php
$x = 10;
if($x > 10){
    echo "X lebih besar dari 10";
}else if($x == 10){
    echo "X sama dengan 10";
}else if($x < 10){
    echo "X kecil dari 10";
}
//Hasil X sama dengan 10
?>
c.         Operator Logikal
Operator
Deskripsi
&&
Dan
||
Atau
!
Bukan
Contoh :
<?php
$x = 10;
$y = 5;
if($x > 8 && $y < 6){
    echo "TRUE";
}else{
    echo "FALSE";
}
//Hasilnya TRUE
?>
Kondisional berguna untuk mengecek suatu kondisi dan melakukan suatu kode jika kondisi tersebut benar atau salah.
a.  if.
Sintaks :
if(kondisi){
    kode yang dijalankan jika benar
}
Contoh :
<?php
$x = 10;
if($x == 10){
    echo "Hai Apa kabar";
}
?>
b.  if - else
Sintaks :
if(kondisi){
    kode yang dijalankan jika benar
}else{
    kode yang dijalankan jika salah
}
Contoh :
<?php
$x = 5;
if($x == 10){
    echo "Hai Apa kabar";
}else{
    echo "X tidak sama dengan 10";
}
?>
c.  if - else if - else
Jika anda membutuhkan kondisi yang banyak
Sintaks :
if(kondisi 1){
    kode yang dijalankan jika kondisi 1 benar
}else if(kondisi 2){
    kode yang dijalankan jika kondisi 2 benar
}else if(kondisi 3){
    kode yang dijalankan jika kondisi 3 benar
}else{
    kode jika salah satu kondisi di atas tidak ada yang benar
}
Contoh :
<?php
$nilai = 80;
if($nilai >= 85){
    echo "A";
}else if($nilai >= 70 && $nilai < 85){
    echo "B";
}else if($nilai >= 60 && $nilai < 70){
    echo "C";
}else{
    echo "D";
}
?>
d.  switch
Sama seperti if - else if - else, berguna jika membutuhkan kondisi yang banyak
Sintaks :
switch(ekspresi){
    case kondisi1 :
        kode yang dijalankan jika kondisi1 benar;
        break;
    case kondisi2 :
        kode yang dijalankan jika kondisi2 benar;
        break;
    case kondisi3 :
        kode yang dijalankan jika kondisi3 benar;
        break;
}
Contoh :
<?php
$buah = "mangga";
switch ($buah) {
    case "apple":
        echo "buahnya adalah apple";
        break;
    case "mangga":
        echo "buahnya adalah mangga";
        break;
    case "jambu":
        echo "buahnya adalah jambu";
        break;
}
?>
a.  for
Berguna untuk pengulangan yang sudah ditentukan terlebih dahulu awalnya berapa, dijalankan sampai kondisi bagaimana.
Sintaks :
for(awal; kondisi; penambahan){
    kode untuk dijalankan
}
Contoh :
<?php
for ($i = 1; $i <= 10; $i++) {
    echo $i."<br>";
}
?>
b.  while
Berguna untuk menjalankan suatu kode terus menerus selama kondisi bernilai TRUE
Sintaks :
while(kondisi){
    kode untuk dijalankan;
}
Contoh :
<?php
$i=1;
while($i<=5)
{
    echo "Nomor : " . $i . "<br />";
 $i++;
}
?>
c.  foreach
Perulangan untuk array yang mempunyai nilai
Sintaks :
foreach (array as $value){
    statement
}
atau
foreach (array as $key => $value){
    statement
}
Contoh :
<?php
$arr = array("satu", "dua", "tiga");
foreach($arr as $key => $value) {
    echo "Key: $key; Value: $value<br />\n";
}
?>

7.         Konstanta
Konstanta adalah suatu tetapan nilai dalam program. Konstanta tidak dapat dirubah nilai sewaktu program dijalankan, kalau hal itu dilakukan akan menyebabkan error. Untuk mendefinisikan konstanta digunakan :
define (NamaPengenal, nilai_konstanta);

Contoh :

<?php
// konstanta Judul=”Hitung Luas Lingkaran”
define (“Judul”, “Hitung Luas Lingkaran”);
// konstanta PHI=3.14
define (“PHI”, 3.14);
echo Judul;
$r=10;
echo “<BR>Jari-jari : $r<BR>\n”;
$luas=PHI * $r * $r;
echo “Luas Lingkaran = $luas”;
?>

8.         Ekspresi
Ekspresi adalah sesuatu yang menghasilkan nilai dan kebanyakan berupa penyamaan pemrograman.
Contoh :

<?php
  function coba ()
  {
      Return 5;
  }
?>

9.         Struktur Kontrol
Script PHP dibangun oleh serangkaian pernyataan. Pernyataan tersebut bisa berupa pemberi nilai (assignment), pemanggil fungsi, perulangan (loop), pernyataan kondisi, atau apapun, termasuk pernyataan kosong. Pernyataan-pernyataan tersebut diatur alur kerjanya dengan struktur kontrol.
Contoh struktur kontrol seperti : if, if...else, if...elseif...else, operasi kondisi ternary, struktur kontrol alternatif, while, do...while, for, foreach, break, continue, switch, require, include, require_once, include_once.

10.      Fungsi
Fungsi adalah sekumpulan baris program yang terdiri atas serangkaian perintah program disusun sedemikian rupa sehingga bisa menjadi satu modul saja.
a.   Fungsi Buatan Sendiri
Dalam PHP programmer diberi kebebasan untuk membuat fungsi sendiri kalau memang dirasa perlu untuk membuatnya. Nama fungsi yang benar diawalai dengan huruf atau garis bawah (underscores), kemudian diikuti dengan angka huruf, huruf atau garis bawah.
b.   Fungsi Built In PHP
PHP menyediakan banyak sekali fungsi-fungsi built in yang siap digunakan. Beberapa contoh fungsi built in PHP seperti : fungsi array, fungsi character, fungsi tanggal dan waktu, fungsi file, fungsi ekspresi regular, fungsi GeoIP, fungsi image, fungsi email, fungsi matematika, fungsi MySQL, fungsi string, fungsi url, fungsi penanganan variable.




VI.     DAFTAR PUSTAKA
1.         Buku Pintar Pemrograman PHP, 2008, Dodit Suprianto, S.Kom, OASE Media.
2.  Panduan Menguasai PHP dan MySQL secara Otodidak, 2010, Anhar, ST. Mediakita. 
3.   PHP? Siapa takut, Copyright © 2003-2006, Ivan Irawan, Komunitas eLearning IlmuKomputer.Com






































 

Tidak ada komentar:

Posting Komentar