0

你好 :) 我给你下面的 Json 解码。 http://pastebin.com/XqhTMWCS

它展示了我最近的 10 场比赛。我需要为每场比赛获得我的 4 个队友,以及我的 5 个敌人。(名称)当某人是队友时,他的“teamId”是 100,当某人是敌人时,“teamId”是 200。我需要分开并展示它们。

比如:你在玩薇恩。你的团队是:

sirjack1101 打冠军 ID 89

blablaa 玩 ID 22

blablaaa 玩 ID 23

blablaaaa 玩 ID 24

敌方队伍是:

blablsaa 演奏 ID 31

bsadaaas 玩 ID 12

basdasdb 播放 ID 53

blablsad 演奏 ID 67

blablsav 演奏 ID 121

我只能找到第一个用户名:

$recent = "My json" ;
$rec    = file_get_contents($recent);
$recdat = json_decode($rec, true); 
$fellow = $recdat[gameStatistics][0][fellowPlayers][0][summonerName];
echo $fellow;

而且我只能使用相同的代码获得我的第一个冠军名称......我需要你的帮助!:)

提前致谢!

4

1 回答 1

0

听起来你只需要一个foreach循环来遍历所有玩家。

<?php
define('TEAMMATE_ID', 100);
define('ENEMY_ID', 200);

$teammates = $enemies = array();
foreach ($data['gameStatistics'][0]['fellowPlayers'] as $player) {
  if ($player['teamId'] == TEAMMATE_ID) {
    $teammates[] = $player['summonerName'] .' playing ID '. $player['championId'];
  }
  else if ($player['teamId'] == ENEMY_ID) {
    $enemies[] = $player['summonerName'] .' playing ID '. $player['championId'];
  }
}

// List of teammates.
print "Teammates:\n";
print implode("\n", array_slice($teammates, 0, 4));

// List of enemies.
print "Enemies:\n";
print implode("\n", array_slice($enemies, 0, 5));
?>

希望我不会偏离基地...

于 2013-06-15T09:19:59.750 回答