351 of 410 menu

Metoda __unset

Metoda __unset este una dintre metodele magice în PHP. Ea este apelată automat când se încearcă ștergerea unei proprietăți inexistente sau inaccesibile a unui obiect folosind funcția unset. Metoda primește un parametru - numele proprietății pe care se încearcă ștergerea.

Sintaxă

public function __unset(string $name): void

Exemplu

Să creăm o clasă cu metoda magică __unset și să încercăm să ștergem o proprietate inexistentă:

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

Rezultatul executării codului:

Attempting to unset 'a' Attempting to unset 'c'

Exemplu

Utilizarea __unset pentru controlul accesului la proprietăți private:

<?php class User { private $email = 'user@example.com'; public function __unset($name) { if ($name === 'email') { throw new Exception("Cannot unset private property 'email'"); } } } $user = new User(); unset($user->email); ?>

Rezultatul executării codului:

Exception: Cannot unset private property 'email'

Vezi și

  • metoda __set,
    care este apelată la scrierea într-o proprietate inaccesibilă
  • metoda __get,
    care este apelată la citirea unei proprietăți inaccesibile
  • metoda __isset,
    care este apelată la verificarea existenței unei proprietăți inaccesibile
Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge