Класс stdClassstdClass
&reftitle.intro;
Пустой класс общего назначения с динамическими свойствами.
Объекты стандартного класса создают оператором
new
или путём приведения к объекту значения другого типа.
Ряд PHP-функций тоже создаёт экземпляры этого класса,
например, json_decode, mysqli_fetch_object
или PDOStatement::fetchObject.
Класс поддерживает динамические свойства
и не требует атрибута #[\AllowDynamicProperties],
хотя не реализует магических методов
__get() и __set().
Это не базовый класс, поскольку PHP не включает понятия универсального базового класса.
При этом возможно создать пользовательский класс, который расширит класс stdClass
и поэтому унаследует поддержку динамических свойств.
&reftitle.classsynopsis;
#[\AllowDynamicProperties]stdClass
Класс не содержит методов или свойств по умолчанию.
&reftitle.examples;
Приведение к объекту значения другого типа
'bar');
var_dump($obj);
]]>
&example.outputs;
string(3) "bar"
}
]]>
Возврат объекта функцией json_decode
&example.outputs;
string(3) "bar"
}
]]>
Объявление динамических свойств
foo = 42;
$obj->{1} = 42;
var_dump($obj);
]]>
&example.outputs;
int(42)
["1"]=>
int(42)
}
]]>