用PHP读取JSON文件

时间:2014-12-02 02:14:00

标签: java php arrays

我正在尝试使用php数组读取JSON。 JSON文件使用的是我不熟悉的格式,我不知道如何编写我的PHP数组,因此它可以读取文件。

有问题的JSON文件可以在这里找到: http://nhlwc.cdnak.neulion.com/fs1/nhl/league/teamroster/ANA/iphone/clubroster.json

格式给了我很多时间,因为1)它是以我的数组无法读取的时间戳开头的,2)文件在值位置之间分开,意味着我有一个结束语句'}]'文件的结尾 - 似乎他们分开了类别

我的PHP数组使用更多标准数组:

function myFunction(response) {
    var arr = JSON.parse(response);
    var i;
    var out = "<table>";

    for(i = 0; i < arr.length; i++) {
        out += "<tr><td>" + 
        arr[i].position +
        "</td><td>" +
        arr[i].weight +
        "</td><td>" +
        arr[i].height +
        "</td></tr>";
    }
out += "</table>"
document.getElementById("id01").innerHTML = out;

}

谢谢

2 个答案:

答案 0 :(得分:1)

它被称为JSON,而不是JSCON。您发布的代码是JavaScript,而不是PHP。

以下是您如何阅读PHP提供的JSON的示例:

<?php
    $result = file_get_contents("http://nhlwc.cdnak.neulion.com/fs1/nhl/league/teamroster/ANA/iphone/clubroster.json");
    $json = json_decode($result);
    foreach ($json->goalie as $player) {
        echo $player->name . '</br>';
    }
?>

这将打印每个守门员的名字。

答案 1 :(得分:0)

看起来你需要 JavaScript (不是php)来读取这个json文件? 在JavaScript中尝试

  

arr = val(&#39;(&#39; +回复+&#39;)&#39;)

并在php中尝试

  

arr = json_decode(回复)