【问题标题】:Undefined Offset: 0未定义的偏移量:0
【发布时间】:2013-12-22 01:22:38
【问题描述】:

在 PHP 中使用 JSON 并且该错误不断弹出。我正在使用的 PHP 代码是

echo $JSON["response"]["players"][0]["steamid"];

实际的 JSON 是对的 here. var dump 是

array(1) { ["response"]=> array(1) { ["players"]=> array(0) { } } }

I used an online JSON viewer and it looks just fine to me.

有人有什么想法吗?

【问题讨论】:

  • 播放器没有索引,为空
  • $JSON["response"]["players"][0]["steamid"];不存在。
  • 玩家为空。所以没有索引 0。0 将是第一个元素。
  • 剪辑。问题在于获取 JSON 的请求。这是一个错误的请求,所以玩家数组是空的。谢谢大家。

标签: php json undefined offset steam


【解决方案1】:

默认情况下,json_decode 会将对象解码为不实现ArrayAccessstdClass 实例。您的代码可能会发出错误。您实际上应该使用:

$JSON->response->players[0]->steamid;

您也可以使用true 作为json_decode 的第二个参数。

这适用于链接中提供的 JSON,但 var_dump 似乎表明链接中的 JSON 与 PHP 脚本正在获取的 JSON 不同。确保您使用正确的参数来远程获取此 JSON。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-25
    • 2013-09-23
    • 1970-01-01
    • 2015-12-20
    • 2012-02-08
    • 2020-01-02
    • 2021-07-06
    相关资源
    最近更新 更多