Belajar PHP OOP Part 1.7 : Destructor

destructor

  • Jika constructor adalah function yang akan dipanggil ketika object dibuat
  • Destructor adalah function yang akan di panggil ketika object dihapus dari memory/ram
  • Biasanya ketika object tersebut sudah tidak lagi digunakan, atau ketika aplikasi akan mati
  • Untuk membuat function destructor , kita bisa menggunakan nama function __destruct()
  • Khusus untuk destructor, kita tidak boleh menambahkan function argument
  • Dalam penggunaan sehari-hari, ini misal cocok untuk menutup koneksi ke database atau menutup proses menulis ke file, sehingga tidak terjadi memory leak

<?php

class Person
{
const AUTHOR = "Programmer Zaman Now";

var ?string $name;
var ?string $address = null;
var string $country = "Indonesia";

public function __construct(string $name, ?string $address)
{
$this->name = $name;
$this->address = $address;
}

function sayHello (?string $name)
{
if (is_null($name)) {
echo "Hi, my name is {$this->name}" . PHP_EOL;
} else {
echo "Hello $name, my name is $this->name" . PHP_EOL;
}
}

function info()
{
echo "AUTHOR : " . self::AUTHOR . PHP_EOL;
}

//Destructor
function __destruct()
{
echo "Object person $this->name is destroyed" . PHP_EOL ;
}
}

<?php

require_once "data/Person.php";

$eko = new Person("Eko", "Subang");
$joko = new Person("Joko", "Subang");

echo "Program Selesai" . PHP_EOL;

 
destructor result

Next Post Previous Post
No Comment
Add Comment
comment url