首页 > 代码库 > 微信公众平台接口教程:获取用户发送的地理位置xml
微信公众平台接口教程:获取用户发送的地理位置xml
微信公众平台接口获取用户发送的地理位置xml
实现的功能就是,当用户向我的公众平台发送一个当前位置,我要在卫星API中获取这个位置的经度纬度(x,y)然后通过这个经纬度接百度地图接口查询这个位置附近的饭店有哪些。
说白了,就是食神摇摇的那个功能。先贴上,用户向公众平台发送的位置的xml
1 <xml> 2 <ToUserName><![CDATA[toUser]]></ToUserName> 3 <FromUserName><![CDATA[fromUser]]></FromUserName> 4 <CreateTime>1351776360</CreateTime> 5 <MsgType><![CDATA[location]]></MsgType> 6 <Location_X>23.134521</Location_X> 7 <Location_Y>113.358803</Location_Y> 8 <Scale>20</Scale> 9 <Label><![CDATA[位置信息]]></Label>10 </xml>
ToUserName 消息接收方微信号,一般为公众平台账号微信号
FromUserName 消息发送方微信号
CreateTime 消息创建时间
MsgType 消息类型,地理位置为location
Location_X 地理位置纬度
Location_Y 地理位置经度
Scale 地图缩放大小
Label 地理位置信息
我如何在微信API中获取经纬度? 如何在百度地图中通过该经纬度查询附近的饭店?
(解决方案)下面代码可以作为参考:
if (!empty($postStr)){ $postObj = simplexml_load_string($postStr, ‘SimpleXMLElement‘, LIBXML_NOCDATA); $fromUsername = $postObj->FromUserName; $toUsername = $postObj->ToUserName; $type=$postObj->MsgType; $customrevent=$postObj->Event; $latitude = $postObj->Location_X; $longitude = $postObj->Location_Y; $keyword = trim($postObj->Content); $time = time(); $textTpl = "<xml> <ToUserName><![CDATA[%s]]></ToUserName> <FromUserName><![CDATA[%s]]></FromUserName> <CreateTime>%s</CreateTime> <MsgType><![CDATA[%s]]></MsgType> <Content><![CDATA[%s]]></Content> <FuncFlag>0</FuncFlag> </xml>";--------------------------------------------------------------------------case "location": $contentStr="你的纬度是{$latitude},你的经度是{$longitude},我已经锁定!准备发射爱国者捣蛋!"; break;
来自:http://bbs.ibeifeng.com/read-htm-tid-65764.html
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。