您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 曲靖分类信息网,免费分类信息发布

使用PHP怎么查询天气预报

2024/12/26 4:07:34发布12次查看
php查询天气预报的步骤:1、开通天气预报接口服务,获取接口请求key;2、调用接口api发出请求查询城市天气;3、获取返回的天气相关信息,语法“$data = $result['result'];”,具体根据业务实际逻辑调整修改信息并输出即可。
本教程操作环境:windows7系统、php8.1版、dell g3电脑
怎么利用php查未来多少天的天气预报?下面本篇文章就来带大家聊聊基于php的免费天气预报接口查询,希望对大家有所帮助。
1、开通接口
天气预报接口服务使用的聚合数据提供的免费接口,每天可以100次免费调用。可以通过 https://www.juhe.cn/docs/api/id/73?s=cpphpcn    注册及开通。
2、通过php发起城市天气查询
<?php// 请求的接口url$apiurl = 'http://apis.juhe.cn/simpleweather/query';// 请求参数$params = [ 'city' => '苏州', // 要查询的城市 'key' => '您申请的接口调用key'];$paramsstring = http_build_query($params);// 发起接口网络请求$response = juhehttprequest($apiurl, $paramsstring , 1);$result = json_decode($response, true);if ($result) { $errorcode = $result['error_code']; if ($errorcode == 0) { // 获取返回的天气相关信息,具体根据业务实际逻辑调整修改 $data = $result['result']; // 打印当前实况天气信息 echo "当前城市:{$data["city"]}".php_eol; echo "当前温度:{$data["realtime"]["temperature"]}".php_eol; echo "当前湿度:{$data["realtime"]["humidity"]}".php_eol; echo "当前天气:{$data["realtime"]["info"]}".php_eol; echo "当前风向:{$data["realtime"]["direct"]}".php_eol; echo "当前风力:{$data["realtime"]["power"]}".php_eol; echo "当前空气质量:{$data["realtime"]["aqi"]}".php_eol; } else { // 请求异常 echo "请求异常:{$errorcode}_{$result["reason"]}".php_eol; }} else { // 可能网络异常等问题,无法正常获得相应内容,业务逻辑可自行修改 echo "请求异常".php_eol;}/** * 发起网络请求函数 * @param $url 请求的url * @param bool $params 请求的参数内容 * @param int $ispost 是否post请求 * @return bool|string 返回内容 */function juhehttprequest($url, $params = false, $ispost = 0){ $httpinfo = array(); $ch = curl_init(); curl_setopt($ch, curlopt_http_version, curl_http_version_1_1); curl_setopt($ch, curlopt_useragent, 'mozilla/5.0 (windows nt 10.0; wow64) applewebkit/537.36 (khtml, like gecko) chrome/41.0.2272.118 safari/537.36'); curl_setopt($ch, curlopt_connecttimeout, 3); curl_setopt($ch, curlopt_timeout, 12); curl_setopt($ch, curlopt_returntransfer, true); if ($ispost) { curl_setopt($ch, curlopt_post, true); curl_setopt($ch, curlopt_postfields, $params); curl_setopt($ch, curlopt_url, $url); } else { if ($params) { curl_setopt($ch, curlopt_url, $url.'?'.$params); } else { curl_setopt($ch, curlopt_url, $url); } } $response = curl_exec($ch); if ($response === false) { // echo "curl error: ".curl_error($ch); return false; } $httpcode = curl_getinfo($ch, curlinfo_http_code); $httpinfo = array_merge($httpinfo, curl_getinfo($ch)); curl_close($ch); return $response;}
3、通过php发起生活指数查询
// 请求的接口url$apiurl = 'http://apis.juhe.cn/simpleweather/life';// 请求参数$params = [ 'city' => '苏州', // 要查询的城市 'key' => '您申请的接口调用key'];$paramsstring = http_build_query($params);// 发起接口网络请求$response = juhehttprequest($apiurl, $paramsstring , 1);$result = json_decode($response, true);if ($result) { $errorcode = $result['error_code']; if ($errorcode == 0) { // 获取返回的天气相关信息,具体根据业务实际逻辑调整修改 $data = $result['result']['life']; // 打印当前实况天气信息 echo "空调指数:{$data['kongtiao']['v']},{$data['kongtiao']['des']}".php_eol; echo "过敏指数:{$data['guomin']['v']},{$data['guomin']['des']}".php_eol; echo "舒适度指数:{$data['shushidu']['v']},{$data['shushidu']['des']}".php_eol; echo "穿衣指数:{$data['chuanyi']['v']},{$data['chuanyi']['des']}".php_eol; echo "钓鱼指数:{$data['diaoyu']['v']},{$data['diaoyu']['des']}".php_eol; echo "感冒指数:{$data['ganmao']['v']},{$data['ganmao']['des']}".php_eol; echo "紫外线指数:{$data['ziwaixian']['v']},{$data['ziwaixian']['des']}".php_eol; echo "洗车指数:{$data['xiche']['v']},{$data['xiche']['des']}".php_eol; echo "运动指数:{$data['yundong']['v']},{$data['yundong']['des']}".php_eol; echo "带伞指数:{$data['daisan']['v']},{$data['daisan']['des']}".php_eol; // ....... } else { // 请求异常 echo "请求异常:{$errorcode}_{$result["reason"]}".php_eol; }} else { // 可能网络异常等问题,无法正常获得相应内容,业务逻辑可自行修改 echo "请求异常".php_eol;}
推荐学习:《php视频教程》
以上就是使用php怎么查询天气预报的详细内容。
曲靖分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录