php根据地址获取百度地图经纬度的实例方法

首先我们来看全部实例代码:

  /**   * @param string $address 地址   * @param string $city 城市名   * @return array   */  function getLatLng($address=‘‘,$city=‘‘)  {   $result = array();   $ak = ‘‘;//您的百度地图ak,可以去百度开发者中心去免费申请   $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(‘renderOption&&renderOption(‘, ‘‘, $data);   $data = str_replace(‘)‘, ‘‘, $data);   $data = json_decode($data,true);   if (!empty($data) && $data[‘status‘] == 0) {    $result[‘lat‘] = $data[‘result‘][‘location‘][‘lat‘];    $result[‘lng‘] = $data[‘result‘][‘location‘][‘lng‘];    return $result;//返回经纬度结果   }else{    return null;   }     }

扩展阅读:

官方方法总结:

  /**    * 搜索地址,查询周边的位置 ()    */   public function query_address($key_words){    $header[] = 'Referer: http://lbs.qq.com/webservice_v1/guide-suggestion.html';    $header[] = 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36';    $url ="http://apis.map.qq.com/ws/place/v1/suggestion/?®ion=&key=OB4BZ-D4W3U-B7VVO-4PJWW-6TKDJ-WPB77&keyword=".$key_words;        $ch = curl_init();    //设置选项,包括URL    curl_setopt($ch, CURLOPT_URL, $url);    curl_setopt($ch,CURLOPT_HTTPHEADER,$header);    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);    curl_setopt($ch, CURLOPT_HEADER, 0);       //执行并获取HTML文档内容    $output = curl_exec($ch);     // print_r($output);die;    //释放curl句柄    curl_close($ch);    // return $output;    $result = json_decode($output,true);     // print_r($result);    // $res = $result['data'][0];    return $result;     //echo json_encode(['error_code'=>'SUCCESS','reason'=>'查询成功','result'=>$result);   }  

示例:

返回值:有很多与参数地址相近的经纬度(一般默认取第一条数据,也就是下标是0的那条经纬度)

  if(!empty($result['data'][0])){        $address = $result['data'][0];        // var_dump($result) ;        sleep(0.5);        //print_r($address);        $lat2 = $address['location']['lat'];        $lng2 = $address['location']['lng'];  }  

以上就是本次介绍的全部知识点内容,感谢大家对的支持。

php根据地址获取百度地图经纬度的实例方法

郑重声明:本网站发布的内容(图片、视频和文字)以及用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服