这个问题已经在这里有了答案:
已关闭8年。
print_r($myObj)
给出以下结果:
stdClass Object
(
[4021450] => stdClass Object
(
[property1] => ooo
[property2] => xxx
)
[3971601] => stdClass Object
(
[property1] => 123
[property2] => 356
)
)
如何使用带有括号的大括号语法访问
sub-object
?我试过了:
$myObj->'3971601'; // Parse error: syntax error
$myObj->{'3971601'}; // Works
$id = 3971601; $myObj->{$id}; // Notice: Trying to get property of non-object
$id = 3971601; $myObj->{''.$id}; // Notice: Trying to get property of non-object
$arr = (array)$myObj; $arr[3971601]; // Notice: Undefined offset: 3971601
$arr = (array)$myObj; $arr['3971601']; // Notice: Undefined index: 3971601
最佳答案
您应该可以完全省略花括号:$myObj->$id
。但是,您的最后4个示例表明有些不对劲。似乎在某些地方,$myObj
被设置为null
或其他一些非对象值。
关于php - 如何访问php花括号对象属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4643894/