微信公众号开发之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.实 ...
随机推荐
- 股票价格涨跌预测—基于KNN分类器
code{white-space: pre;} pre:not([class]) { background-color: white; }if (window.hljs && docu ...
- SQL数据库基础(二)
数据类型: --类似于C#中的数据类型 Datetime 范围是:1753.1.1—— 9999.12.31 Smalldatetime 1900.1.1 ——2079.6.6 操作: ...
- [TypeScript] 建置输出单一JavaScript档案(.js)与Declaration档案(.d.ts)
[TypeScript] 建置输出单一JavaScript档案(.js)与Declaration档案(.d.ts) 问题情景 开发人员使用Visual Studio来开发TypeScript,可以很方 ...
- swift学习笔记之-类型转换
//类型转换 import UIKit /*类型转换(Type Casting) 1.类型转换 可以判断实例的类型,也可以将实例看做是其父类或者子类的实例. 2.类型转换使用 is 和 as 操作符实 ...
- javascript-this,call,apply,bind简述2
上节我们一起研究了this这个小兄弟,得出一个结论,this指向调用this所在函数(或作用域)的那个对象或作用域.不太理解的朋友可以看看上节的内容,这次我们主要探讨一下call(),apply(), ...
- Device Channels in SharePoint 2013
[FROM:http://blog.mastykarz.nl/device-channels-sharepoint-2013/] One of the new features of SharePoi ...
- Force.com微信开发系列(六)客服接口
当用户主动发消息给微信公众账号的时候(包括发送信息.点击自定义菜单click事件.订阅事件.扫描二维码事件.支付成功事件.用户维权),微信将会把消息数据推送给开发者,开发者在一段时间内(目前为48小时 ...
- Android Small插件化框架解读——Activity注册和生命周期
通过对嵌入式企鹅圈原创团队成员degao之前发表的<Android Small插件化框架源码分析>的学习,对Android使用的插件化技术有了初步的了解,但还是有很多需要认真学习的地方,特 ...
- 读取本地Json文件
//读取Json文件 地区 //将文件拖到本地 获取json数据 //获取json文件路径 NSString *pathArea=[[NSBundle mainBundle] pathForRes ...
- 明明已经执行Log.i,偏偏打不出日志
Android内打日志用的当然是Log.i(tag,string),调试时的日志输出可以很快的反映一些问题,方便我们跟进. 但是如果连日志都打不出来了怎么办呢,我今天就遇到了比较坑的问题.项目里别的日 ...