0

我有这样的数据,在远程 URL 上:

{
   "data": [
      {
         "id": "1234567890",
         "name": "data_name",
         "period": "data_period",
         "values": [
            {
               "value": 52,
               "end_time": "2013-01-21T08:00:00+0000"
            },
            {
               "value": 54,
               "end_time": "2013-01-22T08:00:00+0000"
            },
            {
               "value": 57,
               "end_time": "2013-01-23T08:00:00+0000"
            },
            {
               "value": 58,
               "end_time": "2013-01-24T08:00:00+0000"
            }
      ],
         "title": "Some title",
         "description": "Some description"
      }
   ]
}

有没有办法从链接中获取它到 php 变量中?我对 php 有很好的了解,但是我的 javascript 知识很差,所以我不知道如何做到这一点。从这一切来看,我实际上只需要“value”和“end_time”变量。

4

1 回答 1

3

这里不需要 JavaScript。那是 JSON 表示法,它可以很容易地被 PHP 使用标准函数解析。

尝试这个:

$contents = file_get_contents($url); // You can also use cURL here if you like
$obj = json_decode($contents);

然后,您可以将$var其视为对象。例如,$obj->data[0]->values将返回一个包含您的valueend_time字段的对象数组:

Array
(
    [0] => stdClass Object
        (
            [value] => 52
            [end_time] => 2013-01-21T08:00:00+0000
        )

    [1] => stdClass Object
        (
            [value] => 54
            [end_time] => 2013-01-22T08:00:00+0000
        )

    [2] => stdClass Object
        (
            [value] => 57
            [end_time] => 2013-01-23T08:00:00+0000
        )

    [3] => stdClass Object
        (
            [value] => 58
            [end_time] => 2013-01-24T08:00:00+0000
        )

)
于 2013-03-01T22:06:48.707 回答