久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

PHP通過氣象局開放API查詢指定城市(區縣)天氣

瀏覽:2日期:2022-09-13 11:03:38

具體應用說不上,寫這個功能純粹為了好玩,可能在網站的小掛件里沒準能用上這樣的功能,或者一些生活類網站比較適用,在正式進入本話題之前,必須要通過PHP將JSON格式省市(區)二級數據插入數據庫,才能進行接下來的天氣查詢操作,所謂巧婦難為無米之炊,斯理也。在完成省市信息入庫之后,理一下實現思路:前臺通過搜索框執行ajax請求,后臺根據城市名稱查詢城市編碼,然后通過城市編碼組裝成API接口獲取該城市天氣信息,返回到前臺,其實還是很簡單的,代碼如下:

1.前臺代碼 weather.php:

<?php/* * author:phpxs.com * website: * url:http://www.phpxs.com/post/2945 */?><script type='text/javascript'src='http://m.baoyu77737.com/uploads/201502/02/14228784541.js'></script><input type='text' name='city'/><button onclick='queryWeather();'>查詢</button><div id='show'></div><script type='text/javascript'> function queryWeather(){$.post(’getweather.php’, {city: $('#city_name').val()}, function(data) { //optional stuff to do after success var weather = data.weatherinfo.weather1; var temp = data.weatherinfo.temp1; $('#show').html(weather+','+temp); },’json’); }</script>

2.后臺代碼 getweather.php:

<?php/** author:phpxs.com* website:* url:http://www.phpxs.com/post/2945*/if (isset($_POST[’city’])) { $city = $_POST[’city’]; //通過城市名稱獲取城市ID $pdo = new PDO(’mysql:host=localhost;dbname=test;charset=utf8’,’root’,’root’); $stmt = $pdo->prepare(’SELECT id FROM city WHERE name=:name’); $stmt->bindParam(’:name’,$city); $stmt->execute(); $cid = $stmt->fetchColumn(); //通過城市ID獲取城市天氣詳情 $api = 'http://m.weather.com.cn/data/'.$cid.'.html'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $api); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_USERAGENT, ’Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.1 Safari/537.11’); $ret = curl_exec($ch); curl_close($ch); //返回獲取json格式結果 echo $ret;}else{ echo ’請輸入要查詢的城市名!’;}?>

3.效果演示:

PHP通過氣象局開放API查詢指定城市(區縣)天氣

標簽: PHP
相關文章:
主站蜘蛛池模板: 长丰县| 承德市| 富民县| 渝北区| 陆丰市| 昭苏县| 甘南县| 易门县| 闽侯县| 昌乐县| 都昌县| 汝州市| 庆安县| 分宜县| 容城县| 阿合奇县| 富顺县| 桓台县| 仪陇县| 磴口县| 涿鹿县| 义马市| 正定县| 五原县| 慈利县| 石楼县| 井冈山市| 岱山县| 余庆县| 黎城县| 普宁市| 平阳县| 土默特左旗| 高邑县| 乌拉特前旗| 蓬溪县| 兰溪市| 眉山市| 馆陶县| 屏东县| 巴彦县|