如何使用 PHP 获取 JSON 值


how to get json value with php

这里 API 的参数响应:

{"cod":"200","message":0.0045,
"city":{"id":1851632,"name":"Shuzenji",
"coord":{"lon":138.933334,"lat":34.966671},
"country":"JP"},
"cnt":38,
"list":[{
        "dt":1406106000,
        "main":{
            "temp":298.77,
            "temp_min":298.77,
            "temp_max":298.774,
            "pressure":1005.93,
            "sea_level":1018.18,
            "grnd_level":1005.93,
            "humidity":87},
        "weather":[{"id":804,"main":"Clouds","description":"overcast clouds","icon":"04d"}],
        "clouds":{"all":88},
        "wind":{"speed":5.71,"deg":229.501},
        "sys":{"pod":"d"},
        "dt_txt":"2014-07-23 09:00:00"}
        ]}

我无法使用我的 php 代码获得值"阴天":

   echo $data['list'][0]['weather']['description'];
   echo $data['list'][1]['weather']['description'];

尝试了几种组合,我读了这篇文章如何使用 PHP 从 JSON 中提取数据?

但是没有任何效果...

看起来"天气"是一个数组。

试试$data['list'][0]['weather'][0]['description'];

首先,确保您已解码 json。

$decodedData = json_decode($data);

然后,尝试访问对象的属性和数组,如下所示:

echo $decodedData->list[0]->weather[0]->description;