动态选择对象的属性


Dynamically choosing an object's property?

我试图动态地选择一个对象的属性,但我不确定如何实现这一点。

$prop = '12345';
$object->$prop

实际上试图重新创建这个:

$object->12345

如果你想以这种方式访问,你需要使用花括号…

$myobject = new stdClass;
$prop = '12345';
$myobject->$prop = $prop;
echo $myobject->{12345}; //"prints" 12345

或者简单的echo $myobject->$prop就可以了。

如果您访问它作为echo $myobject->12345;,下面的错误将被抛出。

PHP解析错误:语法错误,意外的'12345' (T_LNUMBER),期望标识符(T_STRING)或变量(T_VARIABLE)或'{'或'$'