Aus php bar
__get()
Die Methode __get() wird automatisch aufgerufen, wenn auf eine nicht definierte Eigenschaft einer Klasse lesend zugegriffen wird.
Beispiel
1 class TFoo
2 {
3 // Diese Eigenschaft wird von __get nicht beachtet
4 // und dient der Aufnahme der Werte
5 //
6 protected $vars = array();
7
8 // Konstruktor
9 //
10 function __construct()
11 {
12 $this->vars['foo'] = 'bar';
13 }
14
15 // Die Behandlungsroutine für das Lesen der Eigenschaften
16 //
17 public function __get($name)
18 {
19 if (!empty($name) && array_key_exists($name, $this->vars))
20 return $this->vars[$name];
21 return null;
22 }
23 }
24
25 // Testteil
26 //
27 $bar = new TFoo();
28 echo $bar->foo;
Siehe auch: __set()
Klassen und Objekte (kursiv = veraltet, fett = ab PHP 5)
| Bestandteile
| Interface, Klasse, Methode, Eigenschaft, Konstante, Konstruktor, Destruktor
|
| Verhalten
| Zugriff und Sichtbarkeit, Vererben und Erweitern, Überladen, Abstrahieren, Implementieren, Type Hinting, Klonen und Kopieren
|
| Schlüsselworte
| class, function, var, const; implements, extends; parent, self, $this, ::; public, private, protected, static, abstract, final
|
| magische Funktionen
| __sleep(), __wakeup(); __construct(), __destruct(); __clone(), __toString(); __call(), __get(), __set()
|
| Funktionen
| class_exists(), get_class_methods(), get_class_vars(), get_class(), get_declared_classes(), get_object_vars(), get_parent_class(), is_a(), is_subclass_of(), method_exists(), call_user_func_array(), call_user_func(), clone, __autoload(), get_declared_interfaces(), overload(), aggregate(),
|
| Operatoren
| instanceof
|
| PHP-Handbuch-Einträge
| Klassen- und Objekt-Funktionen, Klassen und Objekte (PHP 4), Klassen und Objekte (PHP 5)
|
| PHP-Erweiterungen
| Classkit, Runkit
|