打印JSON数组-steam web api
我一直在玩弄使用JSON格式的Steam Web API。我一直在尝试打印API给出的数组输出打印JSON数组-steam web api,json,api,web,Json,Api,Web,我一直在玩弄使用JSON格式的Steam Web API。我一直在尝试打印API给出的数组输出 <?php $id = $_GET['id']; $key = 'xxx'; $link = file_get_contents('http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=' . $key . '&steamids=' . $id . '&format=js
<?php
$id = $_GET['id'];
$key = 'xxx';
$link = file_get_contents('http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=' . $key . '&steamids=' . $id . '&format=json');
$profile_info = json_decode($link);
$json_response = json_encode($profile_info->response);
print($json_response['steamid']);
?>
为什么要解码然后编码json
<?php
$id = $_GET['id'];
$key = 'xxx';
$link = file_get_contents('http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=' . $key . '&steamids=' . $id . '&format=json');
$myarray = json_decode($link, true);
print $myarray['response']['players'][0]['steamid'];
?>
或者,如果您确实需要再次编码:
<?php
$id = $_GET['id'];
$key = 'xxx';
$link = file_get_contents('http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=' . $key . '&steamids=' . $id . '&format=json');
$profile_info = json_decode($link);
$json_response = json_encode($profile_info->response->players);
$decoded = json_decode($json_response, true);
print $json_response['steamid'];
?>
不太清楚我为什么要对其进行编码,但是,尝试第一个示例时,出现了错误无法将stdClass类型的对象用作数组
在哪一行?我在我的计算机中复制了您的示例json文件,并尝试了以下操作:
。还需要在json文件末尾添加另一个大括号。print($myarray['response']['players'][0]['streamid'])代码>并且您应该在这里添加一个零。很抱歉出错。即使使用[0],第8行(打印行)仍会出现相同的错误。
<?php
$id = $_GET['id'];
$key = 'xxx';
$link = file_get_contents('http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=' . $key . '&steamids=' . $id . '&format=json');
$profile_info = json_decode($link);
$json_response = json_encode($profile_info->response->players);
$decoded = json_decode($json_response, true);
print $json_response['steamid'];
?>