Что такое __destruct в PHP?
Метод __destruct в языке программирования PHP представляет собой специальный метод, который автоматически вызывается при уничтожении объекта. Этот метод предоставляет возможность выполнить какие-то завершающие действия перед тем, как объект будет освобожден из памяти. __destruct полезен для освобождения ресурсов, закрытия соединений или выполнения других завершающих операций.
<?php
// Пример использования __destruct для освобождения ресурсов
class DatabaseConnection {
private $connection;
// Конструктор класса
public function __construct($host, $username, $password, $database) {
// Установка соединения при создании объекта
$this->connection = new mysqli($host, $username, $password, $database);
// Проверка на ошибки соединения
if ($this->connection->connect_error) {
die("Connection failed: " . $this->connection->connect_error);
}
}
// Метод для выполнения запроса к базе данных
public function query($sql) {
return $this->connection->query($sql);
}
// Метод __destruct, вызываемый при уничтожении объекта
public function __destruct() {
// Закрытие соединения при уничтожении объекта
$this->connection->close();
}
}
// Использование класса и автоматическое закрытие соединения при уничтожении объекта
$db = new DatabaseConnection('localhost', 'root', '', 'mydatabase');
$result = $db->query('SELECT * FROM mytable');
// Обработка результата запроса
// $db будет автоматически уничтожен при завершении скрипта или если он больше не используется
?>
Комментарии