Pada seri belajar PHP dasar bagian ke-9, kita telah mempelajari struktur dasar OOP yang digunakan untuk mengklasifikasikan data dan mengubahnya menjadi objek. Di bagian ini, kita akan melanjutkan belajar PHP dasar dengan mengenal lebih dalam konsep class dan object tersebut.
Apa itu class pada OOP?
Class dalam PHP adalah sebuah template atau cetakan untuk membuat objek yang bisa mendefinisikan properti (variable) dan method (function) yang menggambarkan perilaku dan karakteristik dari objek yang akan dibuat.
Dengan menggunakan class, kita bisa menciptakan banyak object yang berbeda, tetapi semuanya akan memiliki struktur yang sama. Class membantu kita mengorganisir kode dengan lebih baik dan membuat program lebih mudah dikelola.
Untuk menggunakan sebuah class, kita perlu membuat objek dari class tersebut dalam script PHP. Objek yang dihasilkan akan memiliki semua properti dan metode yang ada di dalam class. Dalam OOP PHP, penulisan class dimulai dengan kata kunci class, diikuti oleh nama class-nya.
Contoh penulisan Class pada PHP
Berikut adalah contoh sederhana penulisan class pada PHP.
<?php
class apel{
//isi dari class yang bernama apel
}
?>
Di dalam class, terdapat properti yang perlu dideklarasikan. Properti biasanya dibuat berdasarkan sifat atau jenis, atau definisi dari class tersebut.
Pada contoh penulisan class di atas, kita telah mendeklarasikan sebuah class bernama apel. Properti dari apel bisa kita misalkan jenis-jenis apel, merk apel, atau dimana apel itu berasal, atau ukuranya.
Contoh penulisan properti di dalam class:
<?php
class apel {
//properti dari apel
var $jenis;
var $warna;
var $asal;
}
?>
Selain properti, terdapat method untuk menerapkan suatu proses yang akan dijalankan untuk properti yang sudah dibuat. Pada buah apel, proses yang bisa kita lakukan seperti mengupas apel, atau memotong apel, atau memakan apel.
Method tersebut kita buat seperti membuat sebuah fungsi, bedanya dengan fungsi biasa, method dibuat di dalam sebuah class. Contoh penulisan method di dalam class :
<?php
class apel {
//properti dari apel
var $jenis;
var $warna;
var $asal;
function kupas(){
//isi method kupas
}
function potong(){
//isi method potong
}
function makan(){
//isi method makan
}
}
?>
Apa itu Object pada OOP?
Jika class adalah templatenya, maka object digunakan untuk mencetak hasil template yang sudah dibuat. Cara mendeklarasikan object seperti mendeklarasikan sebuah variable, hanya saja isi variable tersebut adalah class yang ingin dipanggil.
Contoh membuat object pada OOP PHP.
$apelfuji = new apel();
Dari script diatas, kita telah mendeklarasikan object dengan nama apelfuji, dimana object apelfuji dapat memanggil class apel yang telah kita buat sebelumnya.
Penerapan OOP Class dan Object
Sekarang kita sudah memahami apa itu class dan object, serta cara membuatnya. Selanjutnya, kita akan mengembangkannya untuk skenario nyata. Untuk itu, kita perlu menambahkan method seperti di bawah ini agar properti dapat digunakan sebagai variabel data dalam class.
function bungkus($jenis,$warna,$asal){
$this->jenis = $jenis;
$this->warna = $warna;
$this->asal = $asal;
echo "apel sudah dibungkus !!<br><br>";
}
Script di atas digunakan untuk menyimpan setiap variabel yang dimasukkan saat method bungkus
dipanggil. Dengan menyimpan variabel ke dalam properti jenis
, warna
, dan asal
menggunakan $this->
, data tersebut dapat digunakan di method lain.
Setelah itu, tambahkan script method sebelumnya dengan kode berikut:
function kupas(){
if(!empty($this->jenis)&&!empty($this->warna)&&!empty($this->asal)){
echo "Apel ".$this->jenis." dengan warna ".$this->warna." dan asal ".$this->asal." Telah dikupas<br>";
} else {
echo "Belum ada apel dibungkus<br>";
}
}
function potong(){
if(!empty($this->jenis)&&!empty($this->warna)&&!empty($this->asal)){
echo "Apel ".$this->jenis." dengan warna ".$this->warna." dan asal ".$this->asal." Telah dipotong<br>";
} else {
echo "Belum ada apel dibungkus<br>";
}
}
function makan(){
if(!empty($this->jenis)&&!empty($this->warna)&&!empty($this->asal)){
echo "Apel ".$this->jenis." dengan warna ".$this->warna." dan asal ".$this->asal." Telah dimakan<br>";
} else {
echo "Belum ada apel dibungkus<br>";
}
}
Dengan demikian, class sudah memiliki properti dan method yang siap digunakan. Sekarang, kita akan membuat objek untuk memanggil class tersebut dan menjalankan method–method yang telah kita buat. Tambahkan script berikut di bagian paling bawah:
$apelfuji = new apel();
$apelfuji->bungkus("Fuji","Merah","Jepang");
$apelfuji->kupas();
$apelfuji->potong();
$apelfuji->makan();
echo "<br><hr><br>";
$apelmalang = new apel();
$apelmalang->bungkus("Malang","Hijau","Malang");
$apelmalang->kupas();
$apelmalang->potong();
$apelmalang->makan();
Sehingga script penuhnya akan menjadi seperti ini :
<?php
class apel{
//properti dari apel
var $jenis;
var $warna;
var $asal;
function bungkus($jenis,$warna,$asal){
$this->jenis = $jenis;
$this->warna = $warna;
$this->asal = $asal;
echo "apel sudah dibungkus !!<br><br>";
}
function kupas(){
if(!empty($this->jenis)&&!empty($this->warna)&&!empty($this->asal)){
echo "Apel ".$this->jenis." dengan warna ".$this->warna." dan asal ".$this->asal." Telah dikupas<br>";
} else {
echo "Belum ada apel dibungkus<br>";
}
}
function potong(){
if(!empty($this->jenis)&&!empty($this->warna)&&!empty($this->asal)){
echo "Apel ".$this->jenis." dengan warna ".$this->warna." dan asal ".$this->asal." Telah dipotong<br>";
} else {
echo "Belum ada apel dibungkus<br>";
}
}
function makan(){
if(!empty($this->jenis)&&!empty($this->warna)&&!empty($this->asal)){
echo "Apel ".$this->jenis." dengan warna ".$this->warna." dan asal ".$this->asal." Telah dimakan<br>";
} else {
echo "Belum ada apel dibungkus<br>";
}
}
}
$apelfuji = new apel();
$apelfuji->bungkus("Fuji","Merah","Jepang");
$apelfuji->kupas();
$apelfuji->potong();
$apelfuji->makan();
echo "<br><hr><br>";
$apelmalang = new apel();
$apelmalang->bungkus("Malang","Hijau","Malang");
$apelmalang->kupas();
$apelmalang->potong();
$apelmalang->makan();
?>
Ketika script diatas dieksekusi, maka halamannya akan menampilkan data seperti berikut:
Kesimpulan
Memahami class dan object adalah dasar penting dalam pemrograman berbasis OOP. Dengan menerapkannya dengan baik, kita bisa lebih mudah menggunakan class tersebut hanya dengan memanggilnya melalui objek, sehingga dapat menghemat waktu dan membuat pengembangan website lebih efisien.
Demikian series belajar PHP dasar bagian 10 yang menjelaskan tentang apa class dan object pada pemrograman OOP PHP. Selanjutnya, Anda dapat belajar PHP dasar bagian 11 yang membahas tentang construct dan destruct PHP. Semoga bermanfaat.