stdClass クラス stdClass
&reftitle.intro; 動的なプロパティが使える、汎用的な空のクラスです。 このクラスのインスタンスは、 new 演算子や、 オブジェクトへの型変換 によって作成できます。 PHP の関数によっては、このクラスのインスタンスを返すものがあります。 たとえば json_decode, mysqli_fetch_object, PDOStatement::fetchObject が挙げられます。 マジックメソッド __get()/__set() を実装しているかどうかに関わらず、 このクラスでは動的なプロパティが許可されています。 よって、#[\AllowDynamicProperties] アトリビュートは必要ありません。 PHP には全てのクラスの親となる基底クラスの概念がないため、 このクラスは基底クラスではありません。 ただ、stdClass を継承させることで、 動的なプロパティの機能を持ったカスタムクラスを結果的に作ることはできます。
&reftitle.classsynopsis; stdClass このクラスは、メソッドやデフォルトのプロパティを持っていません。
&reftitle.examples; オブジェクトへの型変換を使い、stdClass を作る 'bar'); var_dump($obj); ]]> &example.outputs; string(3) "bar" } ]]> <function>json_decode</function> によって、stdClass を作る &example.outputs; string(3) "bar" } ]]> 動的にプロパティを宣言する foo = 42; $obj->{1} = 42; var_dump($obj); ]]> &example.outputs; int(42) ["1"]=> int(42) } ]]>