Json解码,访问,显示和分隔带有ID的名称,每9个名称

时间:2012-12-03 01:55:35

标签: php arrays json decode

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

它展示了我的最后10场比赛。我需要为每场比赛和我的5个敌人获得我的4个队友。(名字)当有人是同伴时,他的“teamId”是100,当有人是敌人时,“teamId”是200 。我需要分开并展示它们。

喜欢:你在玩Vayne。你的团队是:

  

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;

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

提前致谢!

1 个答案:

答案 0 :(得分: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));
?>

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