Metode __destruct
Die funksie __destruct is 'n magiese metode in PHP wat outomaties opgeroep word wanneer 'n objek uit die geheue verwyder word. Dit gebeur óf wanneer die skrip klaar is, óf wanneer die objek uitdruklik vernietig word. Die metode is nuttig om hulpbronne vry te stel (byvoorbeeld om lêerbeskrywers of databasisverbindings te sluit).
Sintaksis
class MyClass {
public function __destruct() {
// kode vir die destruktor
}
}
Voorbeeld
'n Eenvoudige voorbeeld van 'n klas met 'n destruktor wat 'n boodskap vertoon wanneer die objek vernietig word:
<?php
class Test {
public function __destruct() {
echo 'Object destroyed';
}
}
$obj = new Test();
unset($obj); // Sal die destruktor oproep
?>
Resultaat van die kode-uitvoering:
'Object destroyed'
Voorbeeld
Voorbeeld met die vrystelling van hulpbronne (sluit van 'n lêer):
<?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');
// Werk met die lêer...
unset($handler); // Sal die lêer outomaties sluit
?>
Resultaat van die kode-uitvoering:
'File closed'
Sien ook
-
metode
__construct,
wat die konstruktor van die klas is