Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用循环从JSON数组提取数据_Php_Arrays_Json_Sorting - Fatal编程技术网

Php 使用循环从JSON数组提取数据

Php 使用循环从JSON数组提取数据,php,arrays,json,sorting,Php,Arrays,Json,Sorting,我试图过滤JSON数组响应,因为我只需要一小部分结果 我只需要获取播放器displayName 这是第一名球员的休息时间,每场比赛最多12名球员 我需要一些可以循环并提取名字的东西 [displayName] => jonhofun 目前,我唯一能得到我需要的数据的方法就是做 $player1 = $json11['Response']['data']['entries']['0']['player']['destinyUserInfo']['displayName']; $player

我试图过滤JSON数组响应,因为我只需要一小部分结果

我只需要获取播放器
displayName

这是第一名球员的休息时间,每场比赛最多12名球员

我需要一些可以循环并提取名字的东西

[displayName] => jonhofun
目前,我唯一能得到我需要的数据的方法就是做

$player1 = $json11['Response']['data']['entries']['0']['player']['destinyUserInfo']['displayName'];
$player2 = $json11['Response']['data']['entries']['1']['player']['destinyUserInfo']['displayName'];
etc... etc...
这是最初的答复

Array
(
[Response] => Array
    (
        [data] => Array
            (
                [period] => 2016-08-20T10:16:46Z
                [activityDetails] => Array
                    (
                        [referenceId] => 3156370656
                        [instanceId] => 5370359303
                        [mode] => 12
                        [activityTypeHashOverride] => 3614615911
                    )

                [entries] => Array
                    (
                        [0] => Array
                            (
                                [standing] => 0
                                [score] => Array
                                    (
                                        [basic] => Array
                                            (
                                                [value] => 2190
                                                [displayValue] => 2,190
                                            )

                                    )

                                [player] => Array
                                    (
                                        [destinyUserInfo] => Array
                                            (
                                                [iconPath] => /common/destiny_content/icons/d0d3cd4c26aa1a931d46c4bf720856ba.jpg
                                                [membershipType] => 2
                                                [membershipId] => 4611686018454971653
                                                [displayName] => jonhofun
                                            )

                                        [characterClass] => Warlock
                                        [characterLevel] => 40
                                        [lightLevel] => 322
                                    )
                            )
                    )
            )
    )
)

任何帮助都将不胜感激。

您需要在“条目”下的子数组中循环

foreach($json11['Response']['data']['entries']作为$entries){
$player_name[]=$entries['player']['destinyUserInfo']['displayname'];
}
回声“;
打印($player_name);//检查所有玩家的名字

只需用于循环即可!我不知道怎么做:(这就是问题所在。)它在网上说的都是$key=>$value,但我如何告诉它我想要它得到什么??谢谢,这解决了我的问题,现在我知道以后如何编写foreach循环。
foreach ($json11['Response']['data']['entries'] as $entries) {
    $player_names[] = $entries['player']['destinyUserInfo']['displayname'];
}

echo "<pre>";
print_r($player_names);    // Check all player names