【发布时间】:2017-03-19 22:19:28
【问题描述】:
我听说可以通过仅使用一个查询而不是对每个循环进行查询来循环 JSON 数据。任何想法如何从这段代码中做到这一点? 我真的需要这样做,因为成功加载页面最多需要 3 分钟..
* PHP *
<?php foreach ($return as $user) {
$link = "http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=$devkey&steamids=$user->SteamID";
$json = file_get_contents($link);
$decoding = json_decode($json);
$avatar = $decoding->response->players[0]->avatar;
?>
<td id="addme"><img src="<?php echo $avatar; ?>" width="32" height="32"></td>
<td><?php echo $user->DisplayName; ?></td>
<td><?php echo $user->SteamID; ?> <a href="http://steamcommunity.com/profiles/<?php echo $user->SteamID; ?>/" target="_blank"><span class="glyphicon glyphicon-new-window" id="gotosteamprofile"></span></a></td>
<td><?php
$ipredc = substr($user->Address, 0, -6);
echo $ipredc; ?></td>
<td><?php
$toconver = $user->ConnectedSeconds;
$hours = floor($toconver / 3600);
$mins = floor($toconver / 60 % 60);
$secs = floor($toconver % 60);
$timeFormat = sprintf('%02d:%02d:%02d', $hours, $mins, $secs);
echo $timeFormat;
?></td>
</tr>
<?php
}
?>
【问题讨论】:
-
您要为多少用户拉取数据?
-
最多 300 名玩家
-
我更新了答案
标签: php json performance loops