La clase stdClassstdClass
&reftitle.intro;
Una clase genérica vacía con propiedades dinámicas.
Los objetos de esta clase pueden ser instanciados con
new operador o creados por
conversión a objeto.
Varias funciones de PHP también crean instancias de esta clase, por ejemplo
json_decode, mysqli_fetch_object
o PDOStatement::fetchObject.
A pesar de no implementar
__get()/__set()
métodos mágicos, esta clase permite propiedades dinámicas y no requiere el
#[\AllowDynamicProperties] atributo.
Esto no es una clase base ya que PHP no tiene el concepto de una clase base universal.
Sin embargo, es posible crear una clase personalizada que extienda de
stdClass y como resultado herede la funcionalidad
de propiedades dinámicas.
&reftitle.classsynopsis;
#[\AllowDynamicProperties]stdClass
Esta clase no tiene métodos ni propiedades predeterminadas.
&reftitle.examples;
Creado como resultado de la conversión a objeto
'bar');
var_dump($obj);
]]>
&example.outputs;
string(3) "bar"
}
]]>
Creado como resultado de json_decode
&example.outputs;
string(3) "bar"
}
]]>
Declaración de propiedades dinámicas
foo = 42;
$obj->{1} = 42;
var_dump($obj);
]]>
&example.outputs;
int(42)
["1"]=>
int(42)
}
]]>