Функция __destruct()
__destruct() — это специальный метод класса, который PHP вызывает автоматически, когда объект уничтожается или когда завершается скрипт.
Его можно считать противоположностью __construct(): один запускается, когда жизнь объекта начинается, а другой — когда она заканчивается.
Если в классе есть функция __destruct(), PHP сам вызовет её в конце скрипта, и в вашем коде этот вызов не нужен.
Как и у конструктора, имя начинается с двух символов подчёркивания (__).
В следующем примере используются обе специальные функции: __construct() запускается при создании каждого объекта, а __destruct() — когда скрипт доходит до конца:
Пример деструктора
Функция __destruct() выводит данные каждого фрукта после завершения скрипта:
Вывод: PHP-скрипт
<?php
class Fruit {
public $name;
public $color;
function __construct($name, $color) {
$this->name = $name;
$this->color = $color;
}
function __destruct() {
echo "Название: " . $this->name . ". Цвет: " . $this->color .".<br>";
}
}
$apple = new Fruit('Apple', 'Red');
$banana = new Fruit('Banana', 'Yellow');
?>
Полезный совет
Совет: Конструкторы и деструкторы стоит использовать, потому что они сокращают объём кода, который вам нужно писать.