__construct ()

Використання конструкторів і деструкторів

До таких методів відноситься метод __construct (), що дозволяє задати будь-які дії при створенні об'єкта, і метод __destruct (), що дозволяє задати дії при видаленні об'єкта (наприклад: розірвати з'єднання з базою даних). Для наочності, візьмемо приклад:

<? Php 

class MyClass 
{ 
public $prop1 = "Я властивість класу!"; 

public function __construct () 
{ 
echo 'Клас "', __CLASS__, '" було створено!'; 
} 

public function __destruct () 
{ 
echo 'Клас "', __CLASS__, '" було знищено.'; 
} 

public function setProperty ($newval) 
{ 
$this-> prop1 = $newval; 
} 

public function getProperty () 
{ 
return $this-> prop1. ""; 
} 
} 

// Створення нового об'єкта 
$obj = new MyClass; 

// Отримуємо значення $ prop1 
echo $obj-> getProperty (); 

// Виводимо повідомлення про закінчення файлу 
echo "End of file."; 

?>

Після виконання даного коду ми побачимо наступний результат:

Клас "MyClass" було створено! 
Я властивість класу! 
Кінець файлу. 
Клас "MyClass" було знищено.

Хотілося б звернути вашу увагу, що після завершення виконання скрипта, PHP автоматично звільняє пам'ять.

Примітка:

Константа __CLASS__ використовується для отримання імені класу, в якому вона викликається.

Для того, щоб знищити об'єкт вручну, нам необхідно скористатися функцією unset ()