注意:尝试获取非对象-php的属性

use*_*161 -1 php arrays

我正在尝试访问json解码数据的数组元素.我在尝试访问时遇到错误.下面是我的PHP代码,输出解码的json数据.

<?php
.
.
.

$json = $response;
$json_output = json_decode($json, true);
echo '<pre>';
print_r($json_output);
?>

Array
(
    [0] => Array
        (
            [alph_id] => 02adb5b4-d2fe-4a46-8798-1e2b876b2055
            [name] => Michael
            [s_id] => 1462339266273
            [avg_at] => 12.060000419617
            [distance] => 0
            [sw] => OFF
            [set_no] => 1
            [final_at] => 18.700000762939

        )

    [1] => Array
        (
            [alph_id] => 02adb5b4-d2fe-4a46-8798-1e2b876b2055
            [name] => John
            [s_id] => 1462339266273
            [avg_at] => 12.060000413454
            [distance] => 0
            [sw] => OFF
            [set_no] => 1
            [final_at] => 19.700000762939
        )
        .
        .
        .
Run Code Online (Sandbox Code Playgroud)

我试图访问alph_id元素,但它显示错误.

echo $json_output[0]->alph_id;  
Notice: Trying to get property of non-object
Run Code Online (Sandbox Code Playgroud)

我想我正确访问了数组元素.这有什么问题?

谢谢...

Mur*_*san 6

您可以使用trueas second参数为关联数组创建json解码.

所以你需要访问它$json_output[0]['alph_id'].

如果你这样做,

$json_output = json_decode($json);
Run Code Online (Sandbox Code Playgroud)

这个json_decode将结果作为Object返回,那么它应该是,

$json_output[0]->alph_id; 
Run Code Online (Sandbox Code Playgroud)