Penerapan OOP dalam PHP

Mungkin bagi sebagian orang, khususnya Programmer yang sudah terbias menggunakan Pemrograman Prosedural akan mendapatkan banyak kesulitan ketika beralih ke gata pemrograman Berorientasi Objek (OOP)
termasuk penulis sendiri. Karena kebanyakan dari orang, belajar programmer pertama kali selalu di berikan doktrinasi gaya Pemrograman Prosedural.
Semakin asyik Programmer berkecimpung di gaya pemrograman Prosedural, Semakin malas pula beralih ke gaya  pemrograman Berorientasi Objek.

Selain itu, menurut pengalaman penulis, meski OOP juga telah dipelajari di bangku kuliah, tetapi kok rasanya banyak yang tidak memahami seperti apa dan bagaimana OOP itu. Hal ini mungkin di karenakan terlalu banyak teori, tetapi kurang atau bahkan tidak ada contoh konkritnya, sehingga membuat kita kebingungan.

Pada babini, saya mencoba untuk memberi penjelasan seringkat mungkin dan lebih banyak dengan contoh konkrit, sehingga mudah untuk di pahami. Dibawah ini akan mengenalkan Anda pada OOP menggunakan PHP5.

1. Membuat Class

Sebuah Class merupakan blue print atau template dari Objek. Class adalah penampung sekumpulan elemen data (Variabel) dan kode program (Fungsi) yang di gunakan oleh pengelolah datanya. Variabel yang ada di dalam Class disebut Properti dan Function yang ada di dalam Class disebut Method.

Untuk membuat sebuah Class selalu diawali dengan keyword Class, Kemudian di ikuti dengan nama Class yang akan di buat. Dan isi suatu Class diapit dengan tanda kurung kurawal {}.
Berikut ini struktur dalam pembuataan Class :

<?php
class namakelas{
       public namavariabel;
       . . .
       . . .
}
Sebagai contoh kita akan membuat class orang :

<?php
class orang {
       public $nama;
       publib $umur;
}
?>

Dalam contoh di atas, saya membuat sebuah Class bernama orang dengan propertinya adalah nama dan umur. Sepertisudah saya jelaskan sebelumnya, Properti adalah sifat atau informasi yang melekat dari suatu Objek.

Dan keyword "public" memiliki arti bahwa Properti tersebut dapat diakses dalam atau di luar Class , Pembahasan lebih lanjut mengenai hal ini akan dibahas pada artikel selanjutnya.

Selanjutnya, perhatikan tanda dolar ($), dalam PHP ketika menggunakan variabel Anda harus mengawali namavariabel dengan tanda dolar. 

2. Membuat Method (Function) didalam Class

Selain mempunyai properti, sebuah Class juga mempunyai Method loh Gan. Dalam ilmu PHP, Method suatu Class diwujudkan dalam sebuah Function. Method adalah perilaku yang dapat dilakukan oleh Class. Seperti yang sudah dijelaskan sebelumnya, Method bisa dikatakan segala hal yang terkait dengan pekerjaan atau proses yang dapat dilakukan oleh Objek. Misalnya Objek orang memiliki Method "berlari", "berbicara", "berfikir", dan lain-lain.  

Berikut ini adalah struktur dalam  pembuatan Method didalam Class :

<?php
class namakelas {
       public namavariabel :
       . . . 
       function namafungsi() {
       . . .
      }
}
?> 

Sebagai contoh, didalam Class orang, saya akan membuat sebuah Method dengan nama "berbicara".

<?php
class orang {
    public $nama;
    public $umur;

    function berbicara() {
           echo "Hallo. Nama Saya adalah  $this->nama";
    }
}
?>
  
Padacontoh diatas, kita membuat sebuah function bernama "berbicara" yang isinya adalah menampilkan Properti nama.


Kemudian coba anda perhatikan keyword "$this", keyword ini ada didalam sebuah Class, $this adalah sebuah variabel istimewa untuk mengakses Properti yang ada di dalam Class yang sedang digunakan. "$this" tidak bisa di gunakan di luar kelas.

Tetapi ketika menggunakan $this -> maka variabel atau properti tidak boleh menggunakan tanda dolar. Kesalahan seperti inilah yang seringkali terjadi pada programmer PHP yang masih pemula. Tetapi dengan latihan secara konsisten, saya yakin kesalahan dasar seperti ini akan hilang dengan sendirinya.

Perlu diperhatikan, untuk menggunakan properti atau Method  di dalam PHP Anda harus menggunakan operator "->".

Selanjutnya, kita akan coba membuat sebuah Function lagi bernama"Status usia". Function ini akan menentukan usia dari Objek orang. Jika usia di atas 17 tahun, maka status usia "Dewasa", Sedangkan dibawah 17 tahun, maka status usia "Dibawah Umur".

<?php
class orang {
     public $nama;
     public $umur;

     function berbicara() {
            echo " Hallo. Nama saya adalah $this->nama";
         }
         function statususia() {
                    if ($this-> umur >=17)
                             echo $status = 'Dewasa' ;
                    else
                             echo $status = 'Dibawah Umur' ;
                    return $status;
        }
}
?>

Pasa contoh tersebut, $status dalam Function statususia() bukanlah Properti dari Class Objek orang, karena tidak didefinisikan diatas [ada saat nama dan umur didefinisikan.

Sedangkan keyword "return" yang dapat pada Function statususia() berfungsi untuk mengembalikan nilai suatu variabel (milik fungsi) kepada yang memanggilnya, dalam hal ini adalah  variabel $status.

3. Instance Objek

Objek merupakan Instance dari suatu Class. Sebuah class belum menjadi Objek sebelum kita lakukan proses Instance Objek, dengan kata lain sebuah Class tidak dapat digunakan tanpadi-Instance dulu

Untuk membuat Objek di PHP, kita gunakan keyword "new". Bentuk penulisannya sebagao berikut :

     $NamObjek = new NamaKelas();
Sebagai contoh, mari kita lakukan Instance pada Class Orang :





<?php
class orang {
     public $nama;
     public $umur;

     function berbicara() {
            echo " Hallo. Nama saya adalah $this->nama";
         }
         function statususia() {
                    if ($this-> umur >=17)
                             echo $status = 'Dewasa' ;
                    else
                             echo $status = 'Dibawah Umur' ;
                    return $status;
        }
}
$objOrang = new orang() ;
?>

Contoh tersebut berarti kita membuat sebuah Objek bernama $objOrang hasil dari Instance dari Class Orang.

Jika Kode tersebut di jalankan, maka browser tidak menampilkan apa-apa atau kosong saja. Ini Dikarenakan kita belum menyuruh PHP untuk melakukan sesuatu pada objek $objOrang tersebut.

~ Jangan kemana* Gan masih banyak artikel tentang php

9 Responses to " Penerapan OOP dalam PHP"

  1. This comment has been removed by the author.

    ReplyDelete
  2. terima kasih, sangat bermanfaat

    ReplyDelete
  3. artikelnya gag kelihatan,, heheh thx ilmunya gan,,

    ReplyDelete
  4. PItet heang : maaf hurufnya terlalu kecil
    all : your welcome

    ReplyDelete
  5. materi berat ini bro bagi ane.. soalnya masih belum biasa pake Php :D
    ente anak TI ye???

    ReplyDelete
  6. mas Rukh Huda biasanya kamu pake apa mas ?

    ReplyDelete
  7. Nice Info mas salam dari http://wakhidw.blogspot.com/ semangat koding pokoknya :D

    ReplyDelete
  8. ane orang front-end :D
    jadi masalah yang beginian kurang paham kakak :v

    ReplyDelete

click duit