通過百度api實現通過經緯度反查省市區

1、首先登錄百度帳號,創建一個新應用,選擇WEB應用吧,設置下可訪問的白名單

2、將獲得的ak填入接口中,形如:

http://api.map.baidu.com/geocoder/v2/?ak=你的百度key&location=".$latitude.",".$longitude."&output=json&pois=1

3、運行接口,可得到返回的json串

具體代碼如下:

$query = "SELECT * FROM store order by id desc";
$row = mysql_query($query);
$n = 1;
while($rows = mysql_fetch_array($row)){
    $longitude = $rows['longitude'];
    $latitude = $rows['latitude'];
    //調取百度接口,其中ak爲百度帳號key,注意location緯度在前,經度在後
    $api = "http://api.map.baidu.com/geocoder/v2/?ak=你的百度key&location=".$latitude.",".$longitude."&output=json&pois=1";
    $content = file_get_contents($api);
    $arr = json_decode($content,true);
    $province = $arr['result']['addressComponent']['province'];
    $city = $arr['result']['addressComponent']['city'];
    $district = $arr['result']['addressComponent']['district'];
    $sql = "UPDATE store set province='".$province."',city='".$city."',area='".$district."' where storeid=".$rows['storeid'];
    $res = mysql_query($sql);
    if($res){
        echo '成功更新第'.$n.'個門店<br>';
        $n++;
    }else{
        echo '失敗';
    }
}



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章