მეთოდი __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,
რომელიც არის კლასის კონსტრუქტორი