346 of 410 menu

__destruct Metodu

__destruct işlevi, PHP'de bir nesne bellekten silindiğinde otomatik olarak çağrılan büyülü bir metottur. Bu, ya betik çalışmayı tamamladığında ya da nesne açıkça yok edildiğinde gerçekleşir. Bu metot, kaynakları serbest bırakmak (örneğin, dosya tanıtıcılarını veya veritabanı bağlantılarını kapatmak) için kullanışlıdır.

Sözdizimi

class MyClass { public function __destruct() { // yıkıcı metot kodu } }

Örnek

Nesne yok edildiğinde bir mesaj yazdıran, yıkıcı metoda sahip basit bir sınıf örneği:

<?php class Test { public function __destruct() { echo 'Object destroyed'; } } $obj = new Test(); unset($obj); // Yıkıcı metodu çağıracak ?>

Kodun çalıştırılmasının sonucu:

'Object destroyed'

Örnek

Kaynakları serbest bırakma örneği (dosyayı kapatma):

<?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'); // Dosya ile çalışma... unset($handler); // Dosyayı otomatik olarak kapatacak ?>

Kodun çalıştırılmasının sonucu:

'File closed'

Ayrıca Bakınız

  • __construct metodu,
    ki bu sınıfın kurucu metodudur
plhymsrukk