PHP同时请求多个城市天气预报数据
实现效果
例如需要在APP中展示用户添加的所有城市的天气效果, 天气api的接口可以进行最多30个城市ID同时查询天气, 这足够满足我们的需求了
使用了天气api的免费接口, 每日可请求500次
实现效果如下图

对接准备
先注册一个天气API平台账号 点击注册
该接口每日免费请求500次, 注册后可以看到请求appid和appsecret参数, 替换成自己的
代码请求的是实况天气, 如果需要7天也是可以的, 也可以请求多个城市ID, 具体查看官网文档 https://tianqiapi.com/index/doc?version=week
请求代码
$appid = '43656176';//用户appid
$appsecret = 'I42og6Lm';//用户appsecret
$cityids = '101120101,101120201,101050101,101090101';//城市ID表到官网下载
$url = 'https://www.yiketianqi.com/free/day?appid=' . $appid . '&appsecret=' . $appsecret . '&unescape=1&cityid=' . $cityids;
$data = file_get_contents($url);
$json = json_decode($data, true);
for ($i = 0; $i < count($json); $i++) {
echo $json[$i]['city'] . ' ' . $json[$i]['wea'] . ' ' . $json[$i]['tem_night'] . '~' . $json[$i]['tem_day'] . '℃<br>';
}
输出效果
济南 多云 11~21℃
青岛 多云 13~18℃
哈尔滨 晴 4~16℃
石家庄 多云 12~22℃
PHP同时请求多个城市天气预报数据的更多相关文章
- 全国天气预报数据API调用PHP示例
本代码示例是基于PHP的聚合数据全国天气预报API服务请求的代码样例,使用前你需要: ①:通过https://www.juhe.cn/docs/api/id/39 申请一个天气预报API的appkey ...
- 和风api爬取天气预报数据
''' 和风api爬取天气预报数据 目标:https://free-api.heweather.net/s6/weather/forecast?key=cc33b9a52d6e48de85247779 ...
- 用python+sklearn(机器学习)实现天气预报数据 数据
用python+sklearn机器学习实现天气预报 数据 项目地址 系列教程 勘误表 0.前言 1.爬虫 a.确认要被爬取的网页网址 b.爬虫部分 c.网页内容匹配取出部分 d.写入csv文件格式化 ...
- PHP如何获取Post请求中的Json字符串数据?
摘自:http://dianjingjiaoyu.blog.163.com/blog/static/18347920820114194642257/ 最近用到ext与PHP交互,ext把json数据p ...
- OpenLayers添加点【php请求MySQL数据库返回GeoJSON数据】
php请求MySQL数据库返回GeoJSON数据的实现方法请参见: http://www.cnblogs.com/marost/p/6234514.html OpenLayers[v3.19.1-di ...
- ajax请求、servlet返回json数据
ajax请求.servlet返回json数据 1.方式一 response.setcontenttype("text/html;charset=utf-8"); response. ...
- Python解析Yahoo的XML格式的天气预报数据
以下是Yahoo天气预报接口xml格式数据: <rss xmlns:yweather="http://xml.weather.yahoo.com/ns/rss/1.0" xm ...
- 如何回滚请求<复制系统初始的数据>所处理的数据
一. 问题提出 请求名称:复制系统初始的数据 参数:空 问题: 今天早上财务实施人员新配置了一个OU,然后在跑复制系统初始的数据报表的时候,不小心,不输入参数就直接跑. 报表先是报错. 接下来的 ...
- 异步请求Ajax(取得json数据)
异步请求Ajax 没有学习Ajax之前请求数据的时候都是整个页面全部刷新了一次,也就是每次请求都会重新请求所有的资源.但是在很多时候不需要页面全部刷新,仅仅是需要页面的局部数据刷新即可,此时需要发送异 ...
- ajax请求传过来的json数据直接转成对应的实体类时出错:400 Bad Request 不进入controller
今天开发过程中,在SpringMVC中的Action中处理前台ajax请求传过来的json数据直接转成对应的实体类时出错:400 Bad Request,后台也不报错,400指的的是请求无效(请求有语 ...
随机推荐
- 接入Google认证Google Authenticator
介绍 既然来看该文章就应该知道Google的两步认证是干什么的,如果需要APP(Google Authenticator)的可以私信我. 验证原理讲解: 为每个用户在注册之前生成32位随机码(该码一般 ...
- MySql技术之"虚拟表增加索引"
一.虚拟表增加索引 创建虚拟表,并且增加SKU索引:INDEX idx_sku (sku) CREATE TEMPORARY TABLE t_sku_analy_temp ( sku VARCHAR( ...
- vue3 基础-自定义指令 directive
上篇内容是关于 mixin 混入的一些操作, 也是关于代码复用层面的, 本篇讲自定义指令 directive 也是为了实现复用而设计的一些小功能啦. 先来看看, 如果不用 directive 的场景下 ...
- 行为模式 -- 观察者模式(Observer)
Observer(观察者模式) -- 对象行为型模式 别名 依赖,发布-订阅(publish - subscribe) 意图 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它 ...
- python中list、tuple、set、dict区别
list.tuple.set.dict区别 参考:python的列表,字典,元组,集合的区别和各自使用方法 遍历set 由于set也是一个集合,所以,遍历set和遍历list类似,都可以通过for循环 ...
- MACD的价值不在于“金叉死叉”而在于背离
之前我们根据MACD金叉死叉技术指标作为依据对股票进行买入和卖出操作,但由于MACD本身是由均线衍化而来的技术指标,具有一定的滞后性.也正是由于它的滞后性和单一性,通过MACD金叉死叉来进行买卖时,并 ...
- ODOO产品介绍
自己整理的odoo15产品介绍资料,内容供参考,需要ppt的请联系: 欢迎技术交流.项目合作 !
- 初探Iris
Iris 安装 go get -u github.com/kataras/iris 若遇到下面这种情况: 可删除保存路径中的kataras目录,并执行go get github.com/kataras ...
- kubernetes网络组件calico详解
一.Calico介绍 Calico是一种容器之间互通的网络方案,在虚拟化平台中,比如OpenStack.Docker等都需要实现workloads之间互连,但同时也需要对容器做隔离控制,就像在Inte ...
- 记一次 .NET 某发证机系统 崩溃分析
一:背景 1. 讲故事 前些天有位朋友在微信上找到我,说他的系统有偶发崩溃,自己也没找到原因,让我帮忙看下怎么回事,我分析dump一直都是免费的,毕竟对这些东西挺感兴趣,有问题可以直接call我,好了 ...