348 of 410 menu

Méthode __get

La méthode __get est automatiquement appelée lors d'une tentative d'obtention de la valeur d'une propriété inexistante ou inaccessible d'un objet. Cette méthode magique accepte un paramètre - le nom de la propriété demandée.

Syntaxe

public function __get(string $name) { // implémentation }

Exemple

Créons une classe avec une méthode __get qui retournera des valeurs pour les propriétés inexistantes :

<?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; ?>

Résultat de l'exécution du code :

'John'

Exemple

La méthode __get peut être utilisée pour implémenter des propriétés dynamiques :

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

Résultat de l'exécution du code :

'Valeur dynamique pour test'

Voir aussi

  • la méthode __set,
    qui est appelée lors de la définition d'une propriété inexistante
  • la méthode __call,
    qui est appelée lors de l'appel d'une méthode inexistante
Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser