Die Klasse stdClassstdClass
&reftitle.intro;
Eine generische leere Klasse mit dynamischen Eigenschaften.
Objekte dieser Klasse können mit dem Operator
new instanziiert oder durch
Konvertierung in ein Objekt
erzeugt werden. Auch mehrere PHP-Funktionen erzeugen Instanzen dieser
Klasse, &zb; json_decode,
mysqli_fetch_object oder
PDOStatement::fetchObject.
Obwohl diese Klasse die magischen Methoden
__get()/__set()
nicht implementiert, lässt sie dynamische Eigenschaften zu und benötigt
das Attribut #[\AllowDynamicProperties] nicht.
Da PHP kein Konzept einer universellen Basisklasse hat, handelt es sich
hierbei nicht um eine Basisklasse. Es ist jedoch möglich, eine
benutzerdefinierte Klasse zu erstellen, die von
stdClass erweitert wird und dadurch die
Funktionalität der dynamischen Eigenschaften erbt.
&reftitle.classsynopsis;
stdClass
Diese Klasse hat weder Methoden noch Standardeigenschaften.
&reftitle.examples;
Erzeugt durch eine Typumwandlung in ein Objekt
'bar');
var_dump($obj);
]]>
&example.outputs;
string(3) "bar"
}
]]>
Erzeugt mittels json_decode
&example.outputs;
string(3) "bar"
}
]]>
Deklarieren dynamischer Eigenschaften
foo = 42;
$obj->{1} = 42;
var_dump($obj);
]]>
&example.outputs;
int(42)
["1"]=>
int(42)
}
]]>