微信公众平台接口获取用户发送的地理位置xml,实现的功能就是,当用户向我的公众平台发送一个当前位置,我要在卫星API中获取这个位置的经度纬度(x,y)然后通过这个经纬度接百度地图接口查询这个位置附近的饭店有哪些。
说白了,就是食神摇摇的那个功能。先贴上,用户向公众平台发送的位置的xml
- <xml>
- <ToUserName><![CDATA[toUser]]></ToUserName>
- <FromUserName><![CDATA[fromUser]]></FromUserName>
- <CreateTime>1351776360</CreateTime>
- <MsgType><![CDATA[location]]></MsgType>
- <Location_X>23.134521</Location_X>
- <Location_Y>113.358803</Location_Y>
- <Scale>20</Scale>
- <Label><![CDATA[位置信息]]></Label>
- </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
深入浅出微信公众平台实战开发(微网站、LBS云、Api接口调用、服务号高级接口)http://www.ibeifeng.com/goods-383.html