• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    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=renderOptionoutput=jsonaddress=".$address."city=".$city."ak=".$ak;
     $data = file_get_contents($url);
     $data = str_replace(‘renderOptionrenderOption(‘, ‘‘, $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/?region=key=OB4BZ-D4W3U-B7VVO-4PJWW-6TKDJ-WPB77keyword=".$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判断员工打卡签到经纬度是否在打卡之内
    • golang与php实现计算两个经纬度之间距离的方法
    • PHP计算当前坐标3公里内4个角落的最大最小经纬度实例
    • php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
    • PHP根据两点间的经纬度计算距离
    • PHP计算2点经纬度之间的距离代码
    • 如何用php根据地址获取经纬度
    上一篇:Laravel使用Queue队列的技巧汇总
    下一篇:php中钩子(hook)的原理与简单应用demo示例
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

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