351 of 410 menu

Metoden __unset

Metoden __unset är en av de magiska metoderna i PHP. Den anropas automatiskt när man försöker ta bort en icke-existerande eller otillgänglig egenskap i ett objekt med funktionen unset. Metoden tar en parameter - namnet på egenskapen som man försöker ta bort.

Syntax

public function __unset(string $name): void

Exempel

Låt oss skapa en klass med den magiska metoden __unset och försöka ta bort en icke-existerande egenskap:

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

Resultat av kodkörning:

Försöker ta bort 'a' Försöker ta bort 'c'

Exempel

Användning av __unset för att kontrollera åtkomst till privata egenskaper:

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

Resultat av kodkörning:

Exception: Kan inte ta bort privat egenskap 'email'

Se även

  • metoden __set,
    som anropas vid skrivning till en otillgänglig egenskap
  • metoden __get,
    som anropas vid läsning av en otillgänglig egenskap
  • metoden __isset,
    som anropas vid kontroll av existens för en otillgänglig egenskap
Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa