__destruct մեթոդ

__destruct ֆունկցիան կախարդական մեթոդ է PHP-ում, որն ավտոմատ կանչվում է, երբ օբյեկտը հեռացվում է հիշողությունից: Դա տեղի է ունենում կամ երբ սկրիպտն ավարտվում է, կամ երբ օբյեկտը բացահայտ ոչնչացվում է: Մեթոդը օգտակար է ռեսուրսներն ազատելու համար (օրինակ՝ ֆայլային դեսկրիպտորները կամ ԲԴ-ի կապերը փակելու համար):

Շարահյուսություն

phpclass MyClass {
  public function __destruct() {
    // դեստրուկտորի կոդ
  }
}

Օրինակ

Դեստրուկտորով դասի պարզ օրինակ, որը տպում է հաղորդագրություն օբյեկտի ոչնչացման ժամանակ.

php<?php
class Test {
  public function __destruct() {
    echo 'Object destroyed';
  }
}

$obj = new Test();
unset($obj); // Կկանչի դեստրուկտորը
?>

Կոդի կատարման արդյունք.

php'Object destroyed'

Օրինակ

Ռեսուրսներն ազատելու օրինակ (ֆայլի փակում).

php<?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); // Կփակի ֆայլը ավտոմատ
?>

Կոդի կատարման արդյունք.

php'File closed'

Տես նաև

  • __construct մեթոդը,
    որը դասի կոնստրուկտորն է