通过PHP开发地图功能的时候经常会使用到地址经纬度,今天分享如何 PHP使用百度地图api获取指定地址的经纬度。 publicfunctiongetLatLng($address=成都,$city=成都){$result=array();$url=http://api.map.b
通过PHP开发地图功能的时候经常会使用到地址经纬度,今天分享如何PHP使用百度地图api获取指定地址的经纬度。
public function getLatLng($address='成都',$city='成都')
{
$result = array();
$url ="http://api.map.baidu.com/geocoding/v3/?address=".$address."&city=".$city."&output=json&ak=您的ak秘钥&callback=showLocation";
// $url ="http://api.map.baidu.com/geocoder/v2/?callback=renderOption&output=json&address=".$address."&city=".$city."&ak=".$ak;
$data = file_get_contents($url);
$data = str_replace("showLocation&&showLocation(", "", $data);
$data = str_replace(")", "", $data);
$data = json_decode($data,true);
$result["lat"] = $data["result"]["location"]["lat"];
$result["lng"] = $data["result"]["location"]["lng"];
if (!empty($data) && $data["status"] == 0) {
$result["lat"] = round($data["result"]["location"]["lat"],6);
$result["lng"] = round($data["result"]["location"]["lng"],6);
return $result;//返回经纬度结果
}else{
return null;
}
}官方文档
http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-geocoding
使用例子http://api.map.baidu.com/geocoding/v3/?address=北京市海淀区上地十街10号&output=json&ak=您的ak&callback=showLocation //GET请求