/**
* 获取天气
*/
function get_tq () { //获取用户ip地址
$ip = get_real_ip();
// $ip = '123.125.71.38';
//根据ip地址 获取用户所在城市
$api_key = '8d6c8b8f3749aed6b1aff3aad6f40e37';
// 使用固定城市北京市
$cityName = '北京市'; //获取今天的日期
$day = time_format(NOW_TIME, 'Y.m.d'); if( $cityName ) {
$tq_datas = S('site.widget.nav.tq.' . md5($cityName) . '.day.' . $day ); if( false == $tq_datas ){
//根据城市名 获取天气情况
$tq_datas = @file_get_contents("http://api.map.baidu.com/telematics/v3/weather?location=" . urlencode($cityName) . "&output=json&ak=" . $api_key);
$tq_datas = json_decode( $tq_datas, true ); $tq_datas = $tq_datas ? $tq_datas : [];
S('site.widget.nav.tq.' . md5($cityName) . '.day.' . $day, $tq_datas );
}
} foreach( $tq_datas['results'][0]['weather_data'] as $key=>$val ) {
$tiqi_name = '';
$tiqi_name = explode( '/',$val['dayPictureUrl']);
$tiqi_name = explode( '.', end( $tiqi_name))[0]; $tq_lists[ $key ] = $val;
$terminal = cookie('terminal'); if( $terminal == 'wap') {
$tq_lists[ $key ]['ico'] = '/themes_wap/tainqi/' . $tiqi_name . ".png";
} else {
$tq_lists[ $key ]['ico'] = '/themes/tainqi/' . $tiqi_name . ".png";
}
} $tq_lists[0]['cityName'] = $cityName;
if ( $terminal == 'default' ) {
$this->tq_lists = $tq_lists;
} else {
$this->tq_lists = $tq_lists[0];
} $this->ajaxReturn([ 'status' => 1 , 'name' => $tq_lists ] );
}

PHP 获取天气的更多相关文章

  1. 半吊子学习Swift--天气预报程序-获取天气信息

    昨天申请的彩云天气Api开发者今天上午已审核通过  饭后运动过后就马不停蹄的来测试接口,接口是采用经纬度的方式来获取天气信息,接口地址如下 https://api.caiyunapp.com/v2/ ...

  2. 关于实现手机端自动获取天气的demo

    博主大二做的一个项目,当时很傻很天真,但是还是贴出来,希望能给大家一点帮助.欢迎转载哦!我的博客园地址:http://www.cnblogs.com/natureless/ 首先分析需求,移动端实现天 ...

  3. 内网公告牌获取天气信息解决方案(C# WebForm)

    需求:内网公告牌能够正确显示未来三天的天气信息 本文关键字:C#/WebForm/Web定时任务/Ajax跨域 规划: 1.天定时读取百度接口获取天气信息并存储至Txt文档: 2.示牌开启时请求Web ...

  4. C#调用WebService获取天气信息

    概述 本文使用C#开发Winform应用程序,通过调用<WebXml/>(URL:http://www.webxml.com.cn)的WebService服务WeatherWS来获取天气预 ...

  5. JS调用腾讯接口获取天气

    想做个直接通过JS获取某个城市的天气.本来想通过直接调用中国气象网的接口: http://www.weather.com.cn/weather/101070201.shtml,但是跨域问题一直无法解决 ...

  6. java获取天气信息

    通过天气信息接口获取天气信息,首先要给项目导入程序所需要的包,具体需要如下几个包: json-lib-2.4.jar ezmorph-1.0.6.jar commons-beanutils-1.8.3 ...

  7. Kettle通过Webservice获取天气信息

      Kettle通过Webservice获取天气信息 需求: 通过kettle工具,通过webservice获取天气信息,写成xml格式文件. 思路: Kettle可通过两种选择获取webservic ...

  8. Java通过webservice接口获取天气信息

    通过SOAP请求的方式获取天气信息并解析返回的XML文件. 参考: http://www.webxml.com.cn/WebServices/WeatherWS.asmx import java.io ...

  9. ajax无刷新获取天气信息

    浏览器由于安全方面的问题,禁止ajax跨域请求其他网站的数据,但是可以再本地的服务器上获取其他服务器的信息,在通过ajax请求本地服务来实现: <?php header("conten ...

  10. webservice获取天气信息

    效果 1.eclipse中新建一个Java项目 2.通过命名获取天气的客户端信息 首先,打开天气网站http://ws.webxml.com.cn/WebServices/WeatherWS.asmx ...

随机推荐

  1. 移动端点击300ms延迟问题

    移动端点击延迟事件 1. 移动端浏览器在派发点击事件的时候,通常会出现300ms左右的延迟 2. 原因: 移动端的双击会缩放导致click判断延迟 解决方式 1. 禁用缩放 `<meta nam ...

  2. idea2020.2.x/2020.3.x最新破解版方法教程无限永久重置插件激活码

    idea是一个java开发工件,相信我所有的朋友都用过.本教程教你做到完美,安全,永久.破解 idea2020.2.x和idea2020.3.x的所有版本绝对是100% 激活,支持Windows Ma ...

  3. 【笔记】「pj复习」深搜——拿部分分

    说在最前面 众所周知, NOIP pj 的第三题大部分都是 dp ,但是有可能在考场上想不到动态转移方程,所以我们就可以拿深搜骗分. 方法 深搜拿部分分 剪枝 记忆化 看数据范围 有时候发现,写完深搜 ...

  4. mysql 迁移数据库到 oracle (sql注意问题)

    http://ykdn2010.iteye.com/blog/1511349 一. 项目已用到 oracle 函数的转换 1.  Oracle 中的 TO_DATE (),TO_CHAR () 示例: ...

  5. 哔哩哔哩批量采集器(支持windows和mac)

    链接:https://pan.baidu.com/s/1jW2ea0Cl1xL5xN9DuB8Fcw  密码:klyw

  6. 熟悉ES6常规看这一篇就够了!

    尊重原创:转自https://www.jianshu.com/p/287e0bb867ae 刚开始用Vue或者React,很多时候我们都会把ES6+这位大兄dei加入我们的技术栈中.但是ES6+那么多 ...

  7. UML—20—001

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzzcxy/2018SE1 这个作业要求在哪里 https://edu.cnblogs.com/campus/fz ...

  8. ElasticSearch中head插件的简单用法

    1.首先在左侧打开Query栏. 2.Query下方的第一栏是分别输入es的地址.端口号.index.type. 3.Query下方的第二栏是输入将要执行的方式,旁边的下拉框是辅助选择执行的类型,如图 ...

  9. XCTF EasyHook

    无壳,使用IDA直接分析主函数 逻辑很简单,问题的关键是Hook,题目也是EasyHook, 会发现在生成文件后,文件内容是被加密后的,那就怀疑加密函数参与Hook 动态调试一步步来看,先进入4012 ...

  10. 每日CSS_实时时钟效果

    每日CSS_实时时钟效果 2020_12_22 源码链接 1. 代码解析 1.1 html 代码片段 <div class="clock"> <div class ...