php通过api获取天气信息,调用API获取城市天气信息
Code:
/*
調用API獲取指定城市的天氣數據,并輸出
*/
echo "";
$url="http://m.weather.com.cn/data/101210101.html"; //101210101是杭州的城市代碼
$info=json_decode(file_get_contents($url)); //獲取指定URL的頁面內容,并轉換為json數組
$weather_info = toArray(get_object_vars($info)); //通過get_object_vars()得到的數據其實是object stdclass類型,所以必須轉換為array類型
$info=$weather_info['weatherinfo']; //得到的數據中還嵌套了一個數組weatherinfo,所以需要進行轉化
$str=$info['date_y'].','.$info['week'].'。'.$info['city'].'氣溫:'.$info['temp1'].',天氣:'.$info['weather1'];
echo $str;
//轉換為array類型對象
function toArray($data){
if(is_object($data))
$data=get_object_vars($data);
return is_array($data)?array_map(__FUNCTION__, $data):$data; //array_map():將回調函數作用到給定數組的單元上
}
//將array類型對象轉換為object類型
function toObject($data){
return is_array($data)?(object)array_map(__FUNCTION__, $data):$data;
}
?>
需要特別注意的是:一定要把通過get_object_vars()函數獲取的數據轉化為array數組形式,不然,后面輸出數據時就會提示輸出類型錯誤。
Tagged on: api, php
發表評論
電子郵件地址不會被公開。 必填項已用*標注
姓名 *
電子郵件 *
站點
評論
您可以使用這些HTML標簽和屬性:
總結
以上是生活随笔為你收集整理的php通过api获取天气信息,调用API获取城市天气信息的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小程序--获取手机型号
- 下一篇: php.450 pr,pr界面介绍有哪些