Steamapi未定义指数



我是PHP的初学者,并且正在使用Steamapi。我发现它有点发现,并希望继续在我的网站中导入我的当前游戏。当我使用Steamapi时,我没有任何问题,并且我没有在游戏中。当我在游戏中时,代码正常运行(这就是我认为发生的事情)。

更多地解释我:当我参加游戏时: echo $json["response"]["players"][0]["gameextrainfo"];->这给了我我现在所在的游戏的名称。

当我不在游戏中而我使用时: echo $json["response"]["players"][0]["gameextrainfo"];->我收到此通知:

Undefined index: gameextrainfo in C:xampphtdocssteamsteamapi.php on line 10

所以我认为我遇到的问题是,当我不在游戏中时,蒸汽什么都没有返回?

有人可以帮我吗?

就像我说我只是PHP的初学者,所以如果这是一个愚蠢的问题,对不起。

未定义的索引表示$json['response']['players'][0]处的数组不包含键gameextrainfo

这是有道理的,您没有玩游戏,因此没有提供额外的信息。

您可以使用

检查某个键是否存在

array_key_exists("gameextrainfo", $json["response"]["players"][0])

php docs

isset($json["response"]["players"][0]["gameextrainfo"])

php docs

在这两种情况下,都认为实际上有第一个玩家。您应该检查蒸汽-API以查看响应中始终传递/始终存在的字段。

Steam API文档在:https://developer.valvesoftware.com/wiki/steam_web_api

在获取播放器摘要下返回的一个非常快速的搜索:

gamextrainfo如果用户当前在游戏中,这将是名称 他们正在玩游戏。这可能是非台游戏的名称 快捷方式。

API文档在您刚开始时很难解析,但通常这是获得信息的最佳场所。希望会有所帮助。

- 编辑 - 如果您不在游戏中,则不会返回信息,以解决此信息,请在尝试打印之前添加数据检查。

// Set variable for individual player
$playerInfo = $json['response']['players'][0];
// Test if extra info exists in player info array
if (array_key_exists('gameextrainfo', $playerInfo) 
  && !empty($playerInfo['gameextrainfo'])
) {
  // echo info string
  echo $playerInfo['gameextrainfo];
}

相关内容

  • 没有找到相关文章

最新更新