在这种情况下,如何使用at符号(@)-@顺序访问属性?以下是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。它们都不起作用。
可以进行
echo $object->{'@order'};
或具有可变变量
$name = '@foo';
echo $object->$name;
但正如托马拉克所指出的,你想更改房产名称。它导致fubar代码。
对象属性的规则与任何其他变量名称的规则类似。
因此,名为@order
的属性是不合法的。称之为其他没有疯狂符号的东西。
可以通过强制转换将数组转换为对象来进入这种情况