百度地图—地址解析/逆地址解析

1、地址解析:根据地址获取坐标

key就是百度地图ak,可以去百度开发者中心去免费申请

接口:http://api.map.baidu.com/geocoder?address=地址&output=输出格式类型&key=用户密钥&city=城市名

2、逆地址解析:根据坐标获取地址

接口:http://api.map.baidu.com/geocoder?location=纬度,经度&output=输出格式类型&key=用户密钥

代码如下:

public function GetAddressLatLng($city,$address){
    $result = array();
    $ak = '';//您的百度地图ak,可以去百度开发者中心去免费申请
    //逆地址解析:根据坐标获取地址
    //http://api.map.baidu.com/geocoder?location=纬度,经度&output=输出格式类型&key=用户密钥
    //地址解析:根据地址获取坐标
    $url = "http://api.map.baidu.com/geocoder?address=".$address."&output=json&key=".$ak."&city=".$city;
    $data = file_get_contents($url);
    $data = json_decode($data,true);

    if (!empty($data) && $data['status'] == "OK") {
        $result['lat'] = $data['result']['location']['lat'];
        $result['lng'] = $data['result']['location']['lng'];
        $arrHint = array('nStatus'=>0,'sMsg'=>'查询成功','arrData'=>$result);
    }else{
        $arrHint = array('nStatus'=>1,'sMsg'=>'查询失败');
    }
    $this->output->set_content_type('application/json')->set_output(json_encode($arrHint));
}

你可能感兴趣的:(php)