百度车联网apihttp://developer.baidu.com/map/index.php?title=car/api/distance
成为百度开发者,申请密钥
需要测距的点的经纬度坐标;需传入两个或更多的点。两个点之间用 “; ”进行分割开,单个点的经纬度用“,”分隔开;
waypoints=118.77147503233,32.054128923368;116.3521416286, 39.965780080447;116.28215586757,39.965780080447
返回 XML格式
<DistanceResponse>
<status>Success</status>
<results>
<result>906141.08502603</result> // 返回的第一个点和第二个点之间的距离,单位为米;
<result>5964.3883866308</result> // 返回的第二个点和第三个点之间的距离,单位为米;
</results>
</DistanceResponse>
==========以上是摘自百度车联网API 测距说明==============;
微信发送位置,是来自腾讯地图;我分别去百度地图和腾讯地图查看坐标值
百度地图和腾讯地图坐标值描述刚好相反,使用的时候注意,否则测试出来的距离有问题
waypoints=28.933100,99.800011; 取自腾讯地图坐标值;
varypoints=99.806687,28.939051;取自百度地图坐标值;
==============================
下面是回复坐标代码
waypoints=28.933100,99.800011; //自己的位置
{$X},{$Y}来自用户发送的位置
/* 回复坐标距离 */ public function replylocation() { $X=$this->postObj->Location_X ; $Y=$this->postObj->Location_Y ; $Label=$this->postObj->Label;//获取位置描述 $Url="http://api.map.baidu.com/telematics/v3/distance?waypoints=28.933100,99.800011;{$X},{$Y};&ak=5akmdU3ZPF2cVG1qGG7c2VDB"; $Str=file_get_contents($Url); $rel=simplexml_load_string($Str); $distance=$rel->results->distance; $this->contentStr="您所在位置:{$Label},离我直线距离{$distance}米"; $this->reply(); }
测试结果
<xml> <ToUserName><![CDATA[ojpX_jig-gyi3_Q9fHXQ4rdHniQs]]></ToUserName> <FromUserName><![CDATA[gh_204936aea56d]]></FromUserName> <CreateTime>1445743033</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[您所在位置:中国广东省深圳市南山区华侨城深南大道9789号 邮政编码: 518057,离我直线距离195852.12247054米]]></Content> <FuncFlag>0</FuncFlag> </xml>
未尝试过地图
Google地图API
https://developers.google.com/maps/?hl=zh-cn
申请密码https://code.google.com/apis/console 经纬度解析http://maps.googleapis.com/maps/api/geocode/xml?latlng=23.416155105336312,116.6294002532959&sensor=false&language=zh-CN 测距/测时https://developers.google.com/maps/documentation/distancematrix/
http://maps.googleapis.com/maps/api/distancematrix/xml?origins=经度,纬度&destinations=经度,纬度&mode=walking&language=zh-CN&sensor=false
(origine起点、destinations终点、sensor感应器是否启动gps、mode包含driving/walking/bicyilng、language语言、avoid避开highways高速tolls收费) 查询周边商家https://developers.google.com/places/
https://developers.google.com/places/documentation/search?hl=zh-CN
https://maps.googleapis.com/maps/api/place/search/xml?location=经度,纬度&radius=3000&sensor=false&key=yourkey&keyword=餐馆&language=zh-CN
3、高德地图API
http://code.autonavi.com/index
浏览器调用http://code.autonavi.com/URI/browser_guide 接口格式http://mo.amap.com/?from=经度,纬度&to=经度,纬度&type=0&opt=1&dev=1