在这种情况下,如何使用at符号(@) - @order访问属性? 这是print_r函数的输出:
[0] => stdClass Object
(
[@order] => 0
[name] => Arthotel Munich
[address1] => Paul-Heyse-Strasse 10
[city] => Munich
[postalCode] => 80336
[countryCode] => DE
[airportCode] => MUC
)
我尝试过$ object-> @order,$ object [@order],$ object :: order。他们都没有工作。
答案 0 :(得分:6)
可以做到
echo $object->{'@order'};
$name = '@foo';
echo $object->$name;
但是像托马拉克指出的那样,你想改变那个属性名称。它导致了fubar代码。
答案 1 :(得分:4)
对象属性的规则类似于任何其他变量名称的规则。
因此,名为@order
的属性不合法。称之为其他没有疯狂符号的东西。
可以通过转换将数组转换为对象来解决这种情况。