1

我很难使用 json_decode() 处理嵌套数组。我正在尝试获取团队名称列表。

这是实际的数组: http: //pastebin.com/eMqMcucN

如果你看阵型,一共有三支队伍。第一个团队包含我不需要且不完整的数据(但我能够获得团队名称)。它是团队拥有完整数据的嵌套数组,这让我很着迷。我想得到的是另外两个团队名称并忽略第一个团队,因为它没有嵌套数组,也没有真正的细节。但是,我可以毫无问题地获得第一个团队名称,因为它没有嵌套。

任何帮助/方向将不胜感激。这是我目前在上面的数组上使用的。

"echo 'name: ' . $sd->name;" 行 引发“警告:为 foreach() 提供的参数无效”的错误。我尝试了变化,但没有运气。

$obj=json_decode($json);
$data = $obj->fantasy_content->users->{'0'}->user[1]->teams;
$userguid = $obj->fantasy_content->users->{'0'}->user->{'0'};

echo '<pre>'; 
foreach($data as $d){

    $subdata = $d->team;

    foreach($subdata as $sd){
        echo 'name: ' .  $sd->name; //this line errors
    }
 }
4

1 回答 1

1

你应该更深两层,在team另一个数组下面,只有这个数组包含数组name

[team] => Array
                (
                    [0] => Array (
                       [0] => stdClass Object
                            (
                                [team_key] => 273.l.73856.t.9
                            )

                       [1] => stdClass Object
                            (
                                [team_id] => 9
                            )

                       [2] => stdClass Object
                       (
                            [name] => Team API
                       )
                       ...
                    )
                )
于 2012-08-02T18:24:35.917 回答