【问题标题】:Parse Data from JSON URL从 JSON URL 解析数据
【发布时间】:2015-05-29 17:52:52
【问题描述】:

我正在尝试通过解析 JSON 格式的数据将数据放到我的网站上。 URL 是http://api.bfhstats.com/api/onlinePlayers,我正在尝试输出例如当前在 PC 上在线的播放器。

这是我目前的代码:

<?$json = file_get_contents("http://api.bfhstats.com/api/onlinePlayers");
$data = json_decode($jsondata, true);
echo $data->pc->peak24;?>

我认为这会起作用,但它没有显示任何内容。我对解析 JSON 数据非常陌生,所以如果有人能解释我做错了什么,那就太好了。

【问题讨论】:

  • 在您的代码中看到一个错误:$json 和 $jsondata

标签: php json parsing


【解决方案1】:

改变:

$data = json_decode($jsondata, true);

$data = json_decode($json, true);

另外,json_decode 返回一个数组,所以使用:

echo $data['pc']['peak24'];

访问数据。

【讨论】:

  • 澄清一下,json_decode 在第二个参数设置为 true 时返回一个关联数组。如果他将其更改为 false(或将其保留为默认值),他可以使用他现有的代码。
  • 现在已更改,但没有显示任何内容。我认为这是我称之为 json 对象的格式。感谢您的快速响应
【解决方案2】:

您首先调用变量$json,然后在json_decode 中使用$jsondata

【讨论】:

    【解决方案3】:

    您缺少获取二维数组$dataforeach 循环:

    <?php
    $json = file_get_contents("http://api.bfhstats.com/api/onlinePlayers");
    $data=array();
    $data = json_decode($json, true);
    //print_r ($data);
    foreach ($data as $pc) { 
        echo $pc["peak24"]."<br>";
    }
    ?>
    

    检查名称不同但应相同的$json$jsondata

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-08-01
      • 2016-12-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-11
      • 2017-01-22
      • 1970-01-01
      相关资源
      最近更新 更多