351 of 410 menu

Metóda __unset

Metóda __unset je jednou z magických metód v PHP. Automaticky sa volá, keď sa pokúšajú odstrániť neexistujúcu alebo nedostupnú vlastnosť objektu pomocou funkcie unset. Metóda prijíma jeden parameter - názov vlastnosti, ktorú sa pokúšajú odstrániť.

Syntax

public function __unset(string $name): void

Príklad

Vytvorme triedu s magickou metódou __unset a skúsme odstrániť neexistujúcu vlastnosť:

<?php class MyClass { private $data = ['a' => 1, 'b' => 2]; public function __unset($name) { echo "Pokus o odstránenie '$name'\n"; unset($this->data[$name]); } } $obj = new MyClass(); unset($obj->a); unset($obj->c); ?>

Výsledok vykonania kódu:

Pokus o odstránenie 'a' Pokus o odstránenie 'c'

Príklad

Použitie __unset na kontrolu prístupu k privátnym vlastnostiam:

<?php class User { private $email = 'user@example.com'; public function __unset($name) { if ($name === 'email') { throw new Exception("Nie je možné odstrániť privátnu vlastnosť 'email'"); } } } $user = new User(); unset($user->email); ?>

Výsledok vykonania kódu:

Exception: Nie je možné odstrániť privátnu vlastnosť 'email'

Pozri tiež

  • metóda __set,
    ktorá je volaná pri zápise do nedostupnej vlastnosti
  • metóda __get,
    ktorá je volaná pri čítaní nedostupnej vlastnosti
  • metóda __isset,
    ktorá je volaná pri kontrole existencie nedostupnej vlastnosti
Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť