PHPのマニュアルにも細かい説明は無いんだけど。
標準で定義されているクラス
以下のクラスは、PHP ビルドに含まれる標準関数セットで定義されています。stdClass
オブジェクトへの型変換で作られる。
PHP: 定義済のクラス – Manual
http://php.net/manual/ja/reserved.classes.php
クラス定義無しに、いきなり代入することで任意のメンバー変数が定義できるらしい。でも、C++/C#に馴染んだ自分にはかなり不思議に見える。
1 2 3 4 |
$var = new stdClass(); $var->val1 = 123; echo "val1 = {$var->val1}n"; echo "val2 = {$var->val2}n"; // Notice: Undefined property: stdClass::$val2 |
スコープを限った一時的な作業用に限定して使うといいかもしれない。