Sobes.tech
Junior — Middle

W jakim przypadku konieczne jest zaimplementowanie destruktora dla klasy w PHP?

sobes.tech AI

Odpowiedź od AI

Destruktor w PHP (__destruct()) jest implementowany w klasie, gdy konieczne jest wykonanie określonych działań podczas niszczenia obiektu, na przykład:

  • Zwolnienie zasobów (pliki, połączenia z bazą danych, gniazda).
  • Zamknięcie otwartych połączeń.
  • Wykonanie logowania lub czyszczenia.

Przykład:

class FileHandler {
    private $handle;

    public function __construct($filename) {
        $this->handle = fopen($filename, 'r');
    }

    public function __destruct() {
        if ($this->handle) {
            fclose($this->handle);
        }
    }
}

Tutaj destruktor gwarantuje, że plik zostanie zamknięty podczas niszczenia obiektu.