这里 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;