Що таке __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 буде автоматично знищений при завершенні скрипту або якщо він більше не використовується
?>
Коментарі