我试图在过去的24小时内回复来自accuweather API的解码json数据到某个位置。输出将是这样的“昨天'城市'的天气是 日期:小时 - 温度 日期:小时 - 临时 。 。 。 日期:hour24 - temp24
这是JSON format。
中的数据这是我的代码,带有var转储并尝试以更复杂和更整洁的方式回显它。
$json = file_get_contents('http://dataservice.accuweather.com/currentconditions/v1/328328/historical/24?apikey=GKu1AhOuGN0aAnNEMyiWgKD5fAmo4dpN');
//decode JSON to array
$data = json_decode($json,true);
//show data
print_r($data);
foreach ($data['list'] as $hour => $value) {
echo "The temperature for the hour ". $hours ." was ". $value[Temperature]."<br/>";
# code...
}
提前致谢。
答案 0 :(得分:0)
此代码将遍历每个时间戳并输出温度的时间戳和度量值 不确定你想要什么,但如果它不正确,这是一个很容易的改变。
<?php
$json = file_get_contents('http://dataservice.accuweather.com/currentconditions/v1/328328/historical/24?apikey=GKu1AhOuGN0aAnNEMyiWgKD5fAmo4dpN');
//decode JSON to array
$data = json_decode($json,true);
//show data
echo "<pre>";
// print_r($data);
echo "</pre>";
foreach ($data as $value) {
echo "The temperature for the hour ". $value["LocalObservationDateTime"] ." will be ". $value["Temperature"]["Metric"]["Value"]."<br/>";
// or "Imperial"
# code...
}
编辑以显示日期()功能。
foreach ($data as $value) {
echo "The temperature for the hour ". date("Y-m-d H:i", $value["EpochTime"]) ." will be ". $value["Temperature"]["Metric"]["Value"]."<br/>";
# code...
}
我用了“H”一小时。这将显示格式09:55,如果你想9:55使用“G”。
http://php.net/manual/en/function.date.php