PHP调用API接口实现天气查询功能的示例
发布时间 - 2026-01-11 03:20:55 点击率:次天气预报查询接口API,在这里我使用的是国家气象局天气预报接口

使用较多的还有:新浪天气预报接口、百度天气预报接口、google天气接口、Yahoo天气接口等等。
1、查询方式
根据地名查询各城市天气情况
2.请求URL地址
http://route.showapi.com/9-2
3、接口参数说明:
一、系统级参数(所有接入点都需要的参数):
二、应用级参数(每个接入点有自己的参数):
4.返回参数
以JSON格式返回结果
1)系统级参数(所有接入点都会返回的参数)
2)应用级参数(系统级输出参数showapi_res_body字段中的json数据结构)
具体调用操作:
PHP中自带了处理json格式字符串的内置函数,下面做一个事例,并给出完整代码:
<?php
//查找淄博天气情况
//接口自带编写的数组
$showapi_appid = '46435'; //替换此值,在官网的"我的应用"中找到相关值
$showapi_secret = '7c55aef4ede442ffa49b24c2c808e523'; //替换此值,在官网的"我的应用"中找到相关值
$paramArr = array(
'showapi_appid'=> $showapi_appid,
'areaid'=> "",
'area'=> "淄博",
'needMoreDay'=> "",
'needIndex'=> "",
'needHourData'=> "",
'need3HourForcast'=> "",
'needAlarm'=> ""
//添加其他参数
);
//创建参数(包括签名的处理)接口自带编写的数组
function createParam ($paramArr,$showapi_secret) {
$paraStr = "";
$signStr = "";
ksort($paramArr);
foreach ($paramArr as $key => $val) {
if ($key != '' && $val != '') {
$signStr .= $key.$val;
$paraStr .= $key.'='.urlencode($val).'&';
}
}
$signStr .= $showapi_secret;//排好序的参数加上secret,进行md5
$sign = strtolower(md5($signStr));
$paraStr .= 'showapi_sign='.$sign;//将md5后的值作为参数,便于服务器的效验
return $paraStr;
}
$param = createParam($paramArr,$showapi_secret);
$url = 'http://route.showapi.com/9-2?'.$param;
//获取json格式的数据
$result = file_get_contents($url);
//对json格式的字符串进行编码
$arr = (json_decode($result));
$v = $arr->showapi_res_body;$attr = $v->f1;
//所需要的数据进行调用
$arr1 = $attr->day_weather;
$arr2 = $attr->night_weather;
$arr3 = $attr->night_air_temperature;
$arr4 = $attr->day_air_temperature;
$arr5 = $attr->day_wind_direction;
$arr6 = $attr->night_weather_pic;
echo $arr6;
?>
//将所需要的数据添加到数据库
<?php
require_once "./DBDA.class.php";
$db = new DBDA();
$sql = "insert into weather values('','{$arr1}','{$arr2}')";
$arr = $db->query($sql);
?>
效果如图:
以上这篇PHP调用API接口实现天气查询功能的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# 天气查询api接口
# PHP本地进行API接口测试的实例
# PHP开发api接口安全验证的实例讲解
# PHP调用接口用post方法传送json数据的实例
# PHP调用接口API封装的例子
# 淄博
# 国家气象局
# 给大家
# 接入点
# 自带
# 所需要
# 官网
# 自己的
# 的是
# 中找到
# 在这
# 数据结构
# 希望能
# 较多
# 做一个
# 如图
# 这篇
# 带了
# 里我
# 小编
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
微信小程序 wx.uploadFile无法上传解决办法
Laravel怎么调用外部API_Laravel Http Client客户端使用
PythonWeb开发入门教程_Flask快速构建Web应用
Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】
Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用
如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环
Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】
Win11怎么设置默认图片查看器_Windows11照片应用关联设置
Laravel如何实现全文搜索功能?(Scout和Algolia示例)
jquery插件bootstrapValidator表单验证详解
Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践
高防服务器:AI智能防御DDoS攻击与数据安全保障
JavaScript中的标签模板是什么_它如何扩展字符串功能
Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】
如何在阿里云购买域名并搭建网站?
如何用已有域名快速搭建网站?
如何快速搭建FTP站点实现文件共享?
Laravel怎么配置.env环境变量_Laravel生产环境敏感数据保护与读取【方法】
Android GridView 滑动条设置一直显示状态(推荐)
Laravel如何发送邮件和通知_Laravel邮件与通知系统发送步骤
Android仿QQ列表左滑删除操作
php增删改查怎么学_零基础入门php数据库操作必知基础【教程】
教你用AI将一段旋律扩展成一首完整的曲子
JavaScript如何实现类型判断_typeof和instanceof有什么区别
为什么php本地部署后css不生效_静态资源加载失败修复技巧【技巧】
浅谈redis在项目中的应用
公司门户网站制作流程,华为官网怎么做?
利用 Google AI 进行 YouTube 视频 SEO 描述优化
黑客如何利用漏洞与弱口令入侵网站服务器?
ChatGPT 4.0官网入口地址 ChatGPT在线体验官网
Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层
中国移动官方网站首页入口 中国移动官网网页登录
如何用PHP工具快速搭建高效网站?
HTML5打空格有哪些误区_新手常犯的空格使用错误【技巧】
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
如何使用 jQuery 正确渲染 Instagram 风格的标签列表
如何在IIS中新建站点并配置端口与IP地址?
如何在Windows 2008云服务器安全搭建网站?
Laravel如何实现用户注册和登录?(Auth脚手架指南)
如何快速搭建个人网站并优化SEO?
如何在云主机上快速搭建多站点网站?
Python图片处理进阶教程_Pillow滤镜与图像增强
如何在阿里云虚拟主机上快速搭建个人网站?
教你用AI润色文章,让你的文字表达更专业
高性价比服务器租赁——企业级配置与24小时运维服务
Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】
BootStrap整体框架之基础布局组件
如何正确选择百度移动适配建站域名?
jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】

