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


Posted in PHP onSeptember 03, 2019

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

/**
 * @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);
 }

示例:

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

返回值:有很多与参数地址相近的经纬度(一般默认取第一条数据,也就是下标是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 相关文章推荐
PHP默认安装产生系统漏洞
Oct 09 PHP
php 分库分表hash算法
Nov 12 PHP
收藏的PHP常用函数 推荐收藏保存
Feb 21 PHP
php ss7.5的数据调用 (笔记)
Mar 08 PHP
php通过function_exists检测函数是否存在的方法
Mar 18 PHP
php中smarty实现多模版网站的方法
Jun 11 PHP
php cli配置文件问题分析
Oct 15 PHP
[原创]php简单防盗链验证实现方法
Jul 09 PHP
thinkPHP中验证码的简单实现方法
Dec 05 PHP
curl 出现错误的调试方法(必看)
Feb 13 PHP
在php7中MongoDB实现模糊查询的方法详解
May 03 PHP
PHP实现微信退款的方法示例
Mar 26 PHP
Laravel使用Queue队列的技巧汇总
Sep 02 #PHP
PHP单文件上传原理及上传函数的封装操作示例
Sep 02 #PHP
PHP实现单文件、多个单文件、多文件上传函数的封装示例
Sep 02 #PHP
PHP 文件上传限制问题
Sep 01 #PHP
laravel框架模板之公共模板、继承、包含实现方法分析
Aug 30 #PHP
php中的钩子理解及应用实例分析
Aug 30 #PHP
Yii框架分页技术实例分析
Aug 30 #PHP
You might like
第十四节 命名空间 [14]
2006/10/09 PHP
推荐文章系统(一)
2006/10/09 PHP
php正则校验用户名介绍
2008/07/19 PHP
PHP开发中AJAX技术的简单应用
2015/12/11 PHP
Laravel 5.4因特殊字段太长导致migrations报错的解决
2017/10/22 PHP
jQuery中animate动画第二次点击事件没反应
2015/05/07 Javascript
jquery validate demo 基础
2015/10/29 Javascript
jquery中键盘事件小结
2016/02/24 Javascript
js面向对象实现canvas制作彩虹球喷枪效果
2016/09/24 Javascript
js实现返回顶部效果
2017/03/10 Javascript
详解Vue-cli 创建的项目如何跨域请求
2017/05/18 Javascript
elementui的默认样式修改方法
2018/02/23 Javascript
vue生命周期实例小结
2018/08/15 Javascript
JSONP原理及应用实例详解
2018/09/13 Javascript
对layer弹出框中icon数字参数的说明介绍
2019/09/04 Javascript
使用p5.js实现动态GIF图片临摹重现
2019/10/23 Javascript
python中的内置函数getattr()介绍及示例
2014/07/20 Python
Python中的CSV文件使用"with"语句的方式详解
2018/10/16 Python
python 将对象设置为可迭代的两种实现方法
2019/01/21 Python
python学生管理系统开发
2019/01/30 Python
python  logging日志打印过程解析
2019/10/22 Python
在Python中使用MongoEngine操作数据库教程实例
2019/12/03 Python
Python FFT合成波形的实例
2019/12/04 Python
利用python清除移动硬盘中的临时文件
2020/10/28 Python
使用bandit对目标python代码进行安全函数扫描的案例分析
2021/01/27 Python
彪马加拿大官网:PUMA加拿大
2018/10/04 全球购物
英国哈罗德园艺:Harrod Horticultural
2020/03/31 全球购物
党的生日演讲稿
2014/09/10 职场文书
2014年国庆节广播稿
2014/09/19 职场文书
党的群众路线教育实践活动对照检查材料(四风)
2014/09/27 职场文书
2014保险公司内勤工作总结
2014/12/16 职场文书
2015年药店工作总结
2015/04/20 职场文书
运动会100米加油稿
2015/07/21 职场文书
2016年党员创先争优公开承诺书
2016/03/25 职场文书
女性励志书籍推荐
2019/08/19 职场文书
Golang并发操作中常见的读写锁详析
2021/08/30 Golang