Запіс на курсы па HTML, CSS, JavaScript, PHP, Python, фрэймворкам і CMS,
а таксама: дапамога ў пошуку працы і заказаў, стажыроўка на рэальных праектах→
346 of 410 menu

Метад __destruct

Функцыя __destruct з'яўляецца магічным метадам у PHP, які аўтаматычна выклікаецца пры выдаленні аб'екта з памяці. Гэта адбываецца альбо калі скрыпт завяршае працу, альбо калі аб'ект явна знішчаецца. Метад карысны для вызвалення рэсурсаў (напрыклад, закрыцця файлавых дэскрыптараў або злучэнняў з БД).

Сінтаксіс

class MyClass { public function __destruct() { // код дэструктара } }

Прыклад

Просты прыклад класа з дэструктарам, які выводзіць паведамленне пры знішчэнні аб'екта:

<?php class Test { public function __destruct() { echo 'Object destroyed'; } } $obj = new Test(); unset($obj); // Выкліча дэструктар ?>

Вынік выканання кода:

'Object destroyed'

Прыклад

Прыклад з вызваленнем рэсурсаў (закрыццё файла):

<?php class FileHandler { private $file; public function __construct($filename) { $this->file = fopen($filename, 'r'); } public function __destruct() { if ($this->file) { fclose($this->file); echo 'File closed'; } } } $handler = new FileHandler('example.txt'); // Праца з файлам... unset($handler); // Зачыніць файл аўтаматычна ?>

Вынік выканання кода:

'File closed'

Глядзіце таксама

  • метад __construct,
    які з'яўляецца канструктарам класа
byenru