微信公众号开发之LBS
百度地图Web服务api:http://lbsyun.baidu.com/index.php?title=webapi
1.测距
Route Matrix API v2.0:http://lbsyun.baidu.com/index.php?title=webapi/route-matrix-api-v2
case "location"://地理位置信息
$location_X = $postObj->Location_X;
$location_Y = $postObj->Location_Y;
$geourl="http://api.map.baidu.com/routematrix/v2/walking?output=xml"
."&origins=30.281341,120.209929&destinations={$location_X},{$location_Y}"
."&ak=f6UkU0QqVAhABUeGKSxZBCeb";
$apistr = file_get_contents($geourl);
$apiobj = simplexml_load_string($apistr);
$distanceobj = $apiobj->result->distance->value;//距离
$durationobj = $apiobj->result->duration->text;//时间
$label = $postObj->Label;
$contentStr = "你发送的地理位置是:"."\n".$label.",\n"."经度是:".$location_Y.",\n"."纬度是:".$location_X
.",\n"."你到我们店铺还需要步行{$distanceobj}米,大约需要{$durationobj}.";
break;
测距
2.导航
UPI API:http://lbsyun.baidu.com/index.php?title=uri/api/web(接口说明-》web端-》公交、驾车、步行导航)
case "location"://地理位置信息
$location_X = $postObj->Location_X;//纬度
$location_Y = $postObj->Location_Y;//经度
$geourl="http://api.map.baidu.com/routematrix/v2/walking?output=xml"
."&origins=30.281341,120.209929&destinations={$location_X},{$location_Y}"
."&ak=f6UkU0QqVAhABUeGKSxZBCeb";
$apistr = file_get_contents($geourl);
$apiobj = simplexml_load_string($apistr);
$distanceobj = $apiobj->result->distance->value;//距离
$durationobj = $apiobj->result->duration->text;//时间
$label = $postObj->Label;
$contentStr = "你发送的地理位置是:"."\n".$label.",\n"."经度是:".$location_Y.",\n"."纬度是:".$location_X
.",\n"."你到我们店铺还需要步行{$distanceobj}米,大约需要{$durationobj}."."\n"
."<a href=\"http://api.map.baidu.com/direction?origin=latlng:{$location_X},{$location_Y}"
."|name:{$label}&destination=latlng:30.281341,120.209929|name:艮山西路233号新东升市场"
."&mode=walking&output=html®ion=杭州&src=yourCompanyName|yourAppName\">步行导航</a>";
break;
步行导航
3.全景图
UPI API:http://lbsyun.baidu.com/index.php?title=uri/api/web(接口说明-》web端-》全景服务)
case "location"://地理位置信息
$location_X = $postObj->Location_X;//纬度
$location_Y = $postObj->Location_Y;//经度
$geourl="http://api.map.baidu.com/routematrix/v2/walking?output=xml"
."&origins=30.281341,120.209929&destinations={$location_X},{$location_Y}"
."&ak=f6UkU0QqVAhABUeGKSxZBCeb";
$apistr = file_get_contents($geourl);
$apiobj = simplexml_load_string($apistr);
$distanceobj = $apiobj->result->distance->value;//距离
$durationobj = $apiobj->result->duration->text;//时间
$label = $postObj->Label;
$contentStr = "你发送的地理位置是:"."\n".$label.",\n"."经度是:".$location_Y.",\n"."纬度是:".$location_X
.",\n"."你到我们店铺还需要步行{$distanceobj}米,大约需要{$durationobj}."."\n"
."<a href=\"http://api.map.baidu.com/direction?origin=latlng:{$location_X},{$location_Y}"
."|name:{$label}&destination=latlng:30.281341,120.209929|name:艮山西路233号新东升市场"
."&mode=walking&output=html®ion=杭州&src=yourCompanyName|yourAppName\">查看步行导航</a>"."\n"
."<a href=\"http://api.map.baidu.com/pano/?x={$location_Y}&y={$location_X}&lc=0&ak=f6UkU0QqVAhABUeGKSxZBCeb\">"
."查看你所在位置的全景图</a>";
break;
全景图
4.天气
车联网API:http://developer.baidu.com/map/wiki/index.php?title=car/api/weather(接口说明-》天气查询)
case "天气":
$weatherurl="http://api.map.baidu.com/telematics/v3/weather?location=杭州&ak=f6UkU0QqVAhABUeGKSxZBCeb";
$apistr = file_get_contents($weatherurl);
$apiobj = simplexml_load_string($apistr);
$placeobj = $apiobj->results->currentCity;//读取城市名
$todayobj = $apiobj->results->weather_data->date;//读取当前时间
$weatherobj = $apiobj->results->weather_data->weather;//读取天气
$windobj = $apiobj->results->weather_data->wind;//读取风力
$temobj = $apiobj->results->weather_data->temperature;//读取温度
$pm25obj = $apiobj->results->pm25;//读取pm2.5
$contentStr = "{$placeobj}{$todayobj},天气:{$weatherobj},风力:{$windobj},温度:{$temobj},pm2.5:{$pm25obj}.";
break;
天气
还可以通过地理位置返回天气信息。(case "location":略)
微信公众号开发之LBS的更多相关文章
- 微信公众号开发之VS远程调试
目录 (一)微信公众号开发之VS远程调试 (二)微信公众号开发之基础梳理 (三)微信公众号开发之自动消息回复和自定义菜单 前言 微信公众平台消息接口的工作原理大概可以这样理解:从用户端到公众号端一个流 ...
- 微信公众号开发之H5页面跳转到指定的小程序
前言: 最近公司有一个这样的需要,需要从我们在现有的公众号H5页面中加一个跳转到第三方小程序的按钮.之前只知道小程序之间是可以相互跳转的,今天查阅了下微信开发文档原来现在H5网页也支持小程序之间的跳转 ...
- 微信公众号开发之access_token的全局共用
最近做微信公众号开发,涉及到access_token的缓存问题(避免各自的应用都去取access_token,同时解决微信 appid和appsecret的安全问题),在通用权限管理系统底层增加了实现 ...
- 微信公众账号开发之N个坑(二)
上篇说到微信公众账号的几个坑,前面五个,已经说到菜单,宝宝继续往下赘述了.可惜,还不知道宝宝的宝宝到底是不是心疼宝宝呢,完了,我凌乱了... 回到正题,我们就不吐槽其他的了,上一篇说到微信的菜单了,那 ...
- 微信公众账号开发之N个坑(一)
我这人干活没有前奏,喜欢直接开始.完了,宝宝已经被你们带污了.. 微信公众账号开发文档,官方版(https://mp.weixin.qq.com/wiki),相信我,我已经无力吐槽写这个文档的人了,我 ...
- Java微信公众平台开发之OAuth2.0网页授权
根据官方文档点击查看在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的"开发 - 接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信息"的配置选项中,修 ...
- php开发微信公众号获取信息LBS
1.一般的公众号都可以在微信公众平台里面设置自定义菜单和自动回复消息,如果需要获取用户位置,则必须开启 服务器配置,当次功能开启后,微信公众平台的自定义菜单和自动回复则失效. 需要通过接口开发来实现微 ...
- 公众号开发之wx-tools+springboot应用实战-音乐爬虫推送[JAVA]
springboot+wx-tools实践!音乐爬虫推送公众号DEMOGitHub地址:wx-tools 最终DEMO源码地址: music_collector 先理一下大概的开发步骤: 1. 创建一 ...
- 微信订阅号开发之token验证后,自动回复消息功能做好,发送消息没有返回
相信很多人会跟我一样,token验证之后,发送消息给订阅号,没有消息返回. 以下,说一下我辛苦调试得到的解决办法: 首先,token验证: 自己写的token一直验证失败,找了好久,没有发现bug.实 ...
随机推荐
- HDU 5667 Sequence 矩阵快速幂+费马小定理
题目不难懂.式子是一个递推式,并且不难发现f[n]都是a的整数次幂.(f[1]=a0;f[2]=ab;f[3]=ab*f[2]c*f[1]...) 我们先只看指数部分,设h[n]. 则 h[1]=0; ...
- 静态导入Static import
静态导入Static import 要使用静态成员(方法和变量)我们必须给出提供这个静态成员的类. 使用静态导入可以使被导入类的静态变量和静态方法在当前类直接可见,使用这些静态成员无需再给出他们的类名 ...
- ubuntu定时执行脚本(crond)
如果发现您的系统里没有这个命令,请安装下面两个软件包. vixie-cron crontabs crontab 是用来让使用者在固定时间或固定间隔执行程序之用,换句话说,也就是类似使用者的时程表.-u ...
- js封装tab标签页
<html> <head> <title></title> <meta charset="UTF-8"> <sty ...
- [经验][JS]如何观察网站,进而模仿
应该存在着一类人: 1.看到美丽的网站时,就会F12,看看他是怎么实现的 2.看到网站数据是自己需要的时候,就会F12,看看他是怎么拿到数据的 3.看到网站一个有趣的模块时,,就会F12,看看他是怎么 ...
- RHEL7虚拟机实验快照
配置虚拟机连接网络 首先确保NetworkManager服务正常运行 [root@administrator ~]# systemctl status NetworkManager ● Network ...
- SharePoint 2013 自定义模板页后在列表里修改不了视图
前言 最近系统从2010升级至2013,有自定义模板页.突然发现在列表中切换不了视图,让我很费解. 我尝试过以下解决方案: 去掉自定义css 去掉自定义js 禁用所有自定义功能 结果都没有效还是一样的 ...
- andriod RadioButton
<?xml version="1.0" encoding="UTF-8"?> <LinearLayout android:orientatio ...
- [ html canvas createImageData 创建万花筒效果 ] canvas绘图属性 createImageData 属性讲解 及创建万花筒效果
<!DOCTYPE html> <html lang='zh-cn'> <head> <title>Insert you title</title ...
- 【转】android shape的使用
shape用于设定形状,可以在selector,layout等里面使用,有6个子标签,各属性如下: <?xml version="1.0" encoding="ut ...