A recent post给出了一个示例,用于在框架中使用数据对象定位多维数组嵌套中的值。这个问题的答案结果是一长串与“ - >”相关的名字。与此类似的运算符(使用实际的命名对象和数组,其中我使用通用术语):
$object->object->object->array[index]->array['key']['key']->array['key']['key']
不幸的是,在我发布澄清问题之前,该帖子已经关闭:(我见过类似的例子,
$object->($object->property)
...使用括号。还有其他语法变体吗?在PHP中编写这些语句的语法限制是什么?
答案 0 :(得分:3)
$object->($object->property)
不使用PHP代码。它会给出语法错误。但可能你的意思是:
$object->{$object->property}
其中的工作原理如下:
$object->foo = 'bar';
$object->property = 'foo';
echo $object->property; # foo
echo $object->{$object->property}; # bar
它将首先评估括号内的内容({$object->property}
)foo
,然后返回$object->foo
bar
。