我使用了英雄联盟的api,我会得到召唤者的统计数据。
我正在使用英雄联盟的API来获取召唤者的统计数据。
代码:
object(stdClass)[3]
public 'summonerId' => int XXXXXXXXXXX
public 'playerStatSummaries' =>
array (size=15)
0 =>
object(stdClass)[4]
public 'playerStatSummaryType' => string 'AramUnranked5x5' (length=15)
public 'wins' => int 100
public 'modifyDate' => float 1412611932000
public 'aggregatedStats' =>
object(stdClass)[5]
...
我想仅在" Playerstatsummarytype"的值时获取数据。是" RankedSolo5x5"。
我一直试图用这个:
$win_ranked = $parsed_json2->{'playerStatSummaries'}[8]->{'wins'};
$losses_ranked = $parsed_json2->{'playerStatSummaries'}[8]->{'losses'};
但是对于某些召唤者,有时候这个数字是8或9。
那么我怎样才能获得数据?#34; Playerstatsummarytype"是RankedSolo5x5。
谢谢=)
答案 0 :(得分:1)
所以看起来你只需要在$parsed_json2->playerStatSummaries
过滤数组。
这应该很简单:
$filtered_array = array_filter($parsed_json2->playerStatSummaries, function($item) {
return ($item->playerStatSummaryType === 'RankedSolo5x5');
});
// now you can get at wins/losses for items in filtered array like:
foreach ($filtered_array as $obj) {
echo 'Wins: ' . $obj->wins;
echo 'Losses: ' . $obj->losses;
}