RSS

Simple Object Oriented PHP Tutorial – 1

09 Jul

Pada artikel kali ini saya akan coba membahas tentang OOP pada PHP. Sebelumnya pastikan dulu versi PHP adalah PHP versi 5. Saya tidak akan menjelaskan konsep OOP sendiri secara detail namun hanya akan sedikit membahas mengenai implementasi OOP pada PHP.

Langkah 1: Hal pertama yang perlu dilakukan adalah membuat dua halaman PHP: index.php class_lib.php.
Konsep OOP adalah menciptakan code secara modular, sehingga code PHP berorientasi objek kita akan berada pada file khusus yang dimasukkan ke dalam halaman PHP normal kita dengan menggunakan fungsi “include” PHP.
Pada contoh ini semua code Object Oriented PHP akan berada di file PHP: class_lib.php.
OOP mengunakan konsep kelas dimana secara sederhana kelas merupakan suatu “template” yang digunakan untuk mendefinisikan objek.

Langkah 2: Buat kelas PHP
Untuk menyerdahanakan pemakaian banyak fungsi, variabel dan code yang akan terus mengembang, akan lebih mudah jika dibuat suatu kelas, dimana script PHP tersebut dikembangkan dengan cara OOP.
contoh pendeklarasian class

<?php
class person{ 
} 
?>

Langkah 3: Menambahkan Data ke Kelas
Kelas adalah “blueprint” untuk Objek pada PHP. Perbedaan mendasar antara fungsi dan kelas adalah bahwa kelas berisi data (variabel) dan fungsi yang membentuk sebuah paket yang disebut: “Objek”.
Variabel di dalam kelas disebut “properti”.

<?php 
class person{
     var name; 
}

Langkah 4: Menambahkan Function/Method pada Kelas
Cara pendeklarasian fungsi mirip seperti cara deklarasi kelas, ketika fungsi itu berada dalam suatu kelas maka fungsi itu dinamakan method.
Sebuah method kelas dapat digunakan untuk memanipulasi data/properti dirinya sendiri

<?php  
class person{
     var $name;       //properti
     function set_name($new_name) {  
          $this->name = $new_name;   
     }

     function get_name(){
          return $this->name;  
     } 
}
?>

Langkah 5: Getter and setter functions
Pada langkah ini akan digunakan fungsi get_name () dan set_name (). Method ini sesuai konsep OOP umum yang dapat dilihat dalam banyak bahasa (seperti Java dan Ruby), di mana method ini digunakan untuk “mengeset” dan “mendapatkan” properti di kelas.

<?php  
class person {
     var $name;
     function set_name($new_name){  
          $this->name = $new_name;
     }

     function get_name(){
          return $this->name;
     } 
}
?>

Langkah 6: “$this” variabel
Perhatikan code $this->name = $new_name.
$this adalah variabel built-in yang menunjuk ke objek saat ini, dengan kata lain, $this adalah variabel spesial untuk referensi diri sendiri.
$this digunakan untuk mengakses properti dan untuk memanggil method lain dari kelas saat ini.

Langkah 7: Memasukkan Kelas ke Halaman Utama PHP
Pada langkah ini, dibuat pada halaman “index.php“. Code kelas pada PHP tidak boleh dimasukkan ke halaman utama PHP karena akan menyalahi tujuan dari OOP itu sendiri, oleh karena itu sebaiknya kode yang berisi kelas-kelas tersebut dipisah pada halaman lain yang kemudian akan diakses dengan cara memasukkannya.
Cara memanggil halaman PHP yang berisi code kelas-kelas tadi adalah dengan menggunakan fungsi PHP “include” atau “require”.
Ingat code kelas tadi ada pada file “class_lib.php”

<html>
<head>
</head>
<body>
<?php
     include("class_lib.php");
?>
</body>
</html>
?>

pada bagian ini belum dilakukan apapun, lihat langkah berikutnya

Langkah 8: Membuat Objek
Kelas adalah “blueprint/template” objek PHP. Kelas tidak benar-benar menjadi objek sampai dilakukan sesuatu yang disebut: instantiation.
instantiation digunakan untuk membuat sebuah instance dari kelas untuk menciptakan objek. Dengan kata lain, Instansiasi adalah proses menciptakan sebuah instance dari objek dalam memori (Memori Server)

<?php include("class_lib.php"); ?> 
</head> 
<body>
<?php
     $andrew = new person(); 
?>
</body> 
</html>

Note: variabel $andrew menjadi referensi ke objek person yang baru saja dibuat. $andrew digunakan untuk mengontrol dan menggunakan objek person.
Jika code PHP dijalankan sekarang maka tidak ada apapun yang ditampilkan pada halaman html karena belum ada perintah untuk melakukan sesuatu pada objek yang baru saja dibuat.

Langkah 9: Keyword “New”
Untuk membuat sebuah objek dari kelas digunakan keyword “new”. Ketika instantiate kelas, anda dapat memilih menambahkan kurung atau tidak pada nama kelas. Lihat Contoh

<?php include ("class_lib.php");?>
</head>
<body> 
<?php
     $andrew = new person(); 
     $ongi = new person; 
?>
</body>
</html> 

Catatan: Ketika membuat sebuah objek, pastikan untuk tidak mengutip nama kelas. Sebagai contoh: $andrew = new “person”;

<

Langkah 10: Mengatur Properti Objek
Setelah objek person diciptakan, maka properti dari objek itu dapat di set dengan menggunakan method setter yang sudah dibuat tadi.
Note: Meskipun kedua objek ($andrew dan $ongi) adalah berasal dari kelas yang sama “person” keduanya merupakan objek yang berbeda.

<?php include("class_lib.php"); ?> 
</head> 
<body> 
<?php 
     $andrew = new person(); 
     $ongi = new person; 

     $andrew->set_name("Namaku panggilanku Andrew");
     $ongi->set_name("Ongi nama keluarga"); 
 <?
</body> 
</html>

Langkah 11: Mengakses Data pada Objek
Untuk mengakses data dari objek digunakan method getter, mirip seperti menggunakan method setter.
Ketika mengakses method dan properti dari sebuah kelas, digunakan operator panah (->).

<?php include("class_lib.php"); ?> 
</head> 
<body> 
<?php 
     $andrew = new person(); 
     $ongi = new person; 

     $andrew->set_name("Namaku panggilanku Andrew"); 
     $ongi->set_name("Ongi nama keluarga"); 

     echo "isi variabel andrew: " . $andrew->get_name(); 
     echo "isi variabel ongi: " . $ongi->get_name();  
 <?
</body> 
</html>

Note: Operator panah (->) tidak sama dengan yang digunakan pada array asosiatif: =>

sekian dulu untuk bagian pertama ini, bagian kedua akan menyusul

Regard,
~andrew89ongi~

 
Leave a comment

Posted by on 9 July 2011 in Software & Development, Website

 

Tags: , , , , ,

Monggo share dimari :D

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: