PHP – 对象的数组 – 通过索引获取对象变量时的问题[复制]

参见英文答案 >
How to access object properties with names like integers?                                    6个

我只是想了解为什么下面的最后两个print_r()调用不起作用并抛出以下错误Undefined property:stdClass :: $0.根据PHP文档,我应该能够使用以下运算符$object-> {‘x’}访问对象数字属性(x是我想要访问的数字索引).

谢谢.

$array = (object)array( 
    0 => 'test1',
    1 => 'test2',
    2 => 'test3',
    'test' => (object)array(
        0 => 'hi1',
        1 => 'hi2',
        2 => 'hi3'
    )
);

print_r( $array );

print_r( $array->test );

print_r( $array->test->{'0'} );

print_r( $array->{'0'} );

die();

最佳答案 这是
PHP brokenness.对象属性访问的卷括号语法不适用于全数字键.

点赞