0

所以...

我开始开发简单的 tf2 库存并获取 API。

我从 tf2 api 获取 defindexs

$link = file_get_contents("http://api.steampowered.com/IEconItems_440/GetPlayerItems/v0001/?key=" . $api_key . "&steamid=" . $id . "&format=json");
$myarray = json_decode($link, true);      

print $myarray['result']['items']['0']['defindex'];

来自这里的架构: file_get_contents("http://api.steampowered.com/IEconItems_440/GetSchema/v0001/?key=" . $api_key . "");

我打印了 $myarray 结果是:261

所以,我有两个问题:

如何将所有定义索引打印到我的页面?

如何用 GetSchema 中的武器名称替换 defindexs?

4

1 回答 1

1

如何打印所有定义索引:

使用 foreach 遍历每个项目

foreach($myarray['result']['items'] as $item)
{
    echo $item['defindex'].'<br />';
}

如何用名称替换项目定义索引:

首先,您必须将 GET paramater language=en添加到 GetSchema 请求链接,因此 GetSchema 将返回正确的项目名称。

file_get_contents("http://api.steampowered.com/IEconItems_440/GetSchema/v0001/?language=en&key=" . $api_key . "");

然后像第一个问题一样再次检查每个项目。在每个项目迭代中遍历架构中的每个项目并比较定义索引。如果它们匹配,则您在模式中创建了您的项目。打印“item_name”参数。不要忘记打破你的第二个 foreach,因为模式数组很大。示例代码:

foreach($myarray['result']['items'] as $item)
{
    foreach($schema['result']['items'] as $schemaItem)
    {
        if($item['defindex'] == $schemaItem['defindex'])
        {
            echo $schemaItem['item_name'].'<br />';
            break;
        }
    }
}
于 2015-02-05T05:39:54.100 回答