Sobes.tech
Junior — Middle

V jakém případě je nutné implementovat destruktor pro třídu v PHP?

sobes.tech AI

Odpověď od AI

Destruktor v PHP (__destruct()) je implementován ve třídě, když je třeba provést určité akce při ničení objektu, například:

  • Uvolnění zdrojů (soubory, připojení k databázi, sokety).
  • Zavření otevřených připojení.
  • Provádění logování nebo čištění.

Příklad:

class FileHandler {
    private $handle;

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

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

Zde zaručuje destruktor, že soubor bude uzavřen při ničení objektu.