348 of 410 menu

Metodo __get

Il metodo __get viene chiamato automaticamente quando si tenta di ottenere il valore di una proprietà inesistente o inaccessibile di un oggetto. Questo metodo magico accetta un parametro: il nome della proprietà richiesta.

Sintassi

public function __get(string $name) { // implementazione }

Esempio

Creiamo una classe con il metodo __get, che restituirà valori per proprietà inesistenti:

<?php class User { private $data = [ 'name' => 'John', 'age' => 30 ]; public function __get($name) { if (array_key_exists($name, $this->data)) { return $this->data[$name]; } return null; } } $user = new User(); echo $user->name; ?>

Risultato dell'esecuzione del codice:

'John'

Esempio

Il metodo __get può essere utilizzato per implementare proprietà dinamiche:

<?php class DynamicProperties { public function __get($name) { return "Valore dinamico per {$name}"; } } $obj = new DynamicProperties(); echo $obj->test; ?>

Risultato dell'esecuzione del codice:

'Valore dinamico per test'

Vedi anche

  • metodo __set,
    che viene chiamato quando si imposta una proprietà inesistente
  • metodo __call,
    che viene chiamato quando si chiama un metodo inesistente
Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta