Mengenal Constructors & Destructors

Mumpung hari ini hari weekend, dan project ujikom ketinggalan di flashdisk temen jadi aja ga ada kerjaan selain main PTC dan akhirnya koneksi pun ngajak ribut.. yaudah deh ngeposting aja biar ada kerjaan.. kali ini kita lanjut lagi ke tutorial ke 2 dari postingan Belajar OOP (Object Oriented Programming) Menggunakan PHP Untuk Pemula. Disini saya akan membahas mengenai Constructors & Destructors. Lalu apa itu constructor terus apa itu destructor? mari kita bahas satu per satu.. :D

Constructor (bahasa indonesia: konstruktor) adalah method khusus yang akan dijalankan secara otomatis pada saat sebuah objek dibuat (instansiasi), yakni ketika perintah “new” dijalankan.

Dalam PHP, constructor dibuat menggunakan method : __construct().

Destructor (bahasa indonesia: destruktor) adalah method khusus yang dijalankan secara otomatis pada saat sebuah objek dihapus. Di dalam PHP, seluruh objek secara otomatis dihapus ketika halaman PHP dimana objek itu berada selesai diproses. Tetapi kita juga dapat menghapus objek secara manual. Destructor biasanya digunakan untuk ‘membersihkan’ beberapa variabel, atau menjalankan proses tertentu sebelum objek dihapus.

Dalam PHP, destructor dibuat menggunakan method : __destruct().

Constructor biasa digunakan untuk membuat proses awal dalam mempersiapkan objek, seperti memberi nilai awal kepada property, memanggil method internal dan beberapa proses lain yang digunakan untuk ‘mempersiapkan’ objek.

Constructor ini akan langsung dijalankan otomatis ketika Class di instantisasi ke dalam objek. Jika sebelumnya kita mengisikan nilai pada property satu persatu, kini kita bisa mengisi sekaligus dengan menggunakan Constructor. Untuk membuat constructor, silahkan buat kode seperti dibawah ini.

<?php 
	/*
	* Contoh Constructor
	*/

class Siswa{

	// Property
  	public $nama;
  	public $nilai;
  	public $kelas;

  	// Constructor
  	function __construct($nama,$nilai,$kelas){
  		$this->nama = $nama;
  		$this->nilai = $nilai;
  		$this->kelas = $kelas;
  	}

  	// Method
  	function StatusNilai(){
  		if($this->nilai >= 70) {
    		$status = "Lulus";
    	}else{
    		$status = "Remed";
    	}
    	return $status;
	}
}

$dika = new Siswa('Ferdhika',85,'XII RPL A');

echo "
	Nama 	: ".$dika->nama."<br>
	Nilai 	: ".$dika->nilai."<br>
	Kelas 	: ".$dika->kelas."<br>
	Status 	: ".$dika->StatusNilai()."
";

?>

Setelah Constructor, sekarang Destructor, namun destructor ini jarang sekali digunakan. Untuk penulisannya bisa anda lihat dibawah ini.

<?php 

	/*
	* Contoh Destructor
	*/

class Siswa{
  	// Constructor
  	function __construct(){
  		//code here
  	}

  	// Destructor
  	function __destruct(){
  		//code here
  	}
}
?>

Selesai.. semoga bermanfaat :D untuk tutorial selanjutnya, saya akan membuat tutorial Aksesbilitas Property dengan Encapsulation. Pantengin aja terus tutorial postingan Belajar OOP (Object Oriented Programming) Menggunakan PHP Untuk Pemula. Sampai jumpa.. :D