1. /**
  2. * 获取地址对应的坐标
  3. * @param $address
  4. * @return array
  5. */
  6. function getAddressPoint($address){
  7. $lng = 0;
  8. $lat = 0;
  9. $url = 'http://api.map.baidu.com/geocoder?output=json&address=' . urlencode($address);
  10. if(function_exists('curl_init')) {
  11. $ch = curl_init();
  12. curl_setopt($ch, CURLOPT_URL, $url);
  13. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  14. curl_setopt($ch, CURLOPT_HEADER, 0);
  15. $data = curl_exec($ch);
  16. curl_close($ch);
  17. }else{
  18. $data = file_get_contents($url,false,stream_context_create(array(
  19. "http"=>array(
  20. "method"=>"GET",
  21. "timeout"=>1
  22. ),
  23. )));
  24. }
  25. $data = json_decode($data,true);
  26. if($data && $data['status'] == 'OK' && isset($data['result']) && isset($data['result']['location']))
  27. {
  28. $lng = $data['result']['location']['lng'];
  29. $lat = $data['result']['location']['lat'];
  30. }
  31. return array($lng,$lat);
  32. }
  33. /**
  34. * 逆地理编码专属请求
  35. * User: Lg
  36. * Date: 2016/4/11
  37. * @param $address
  38. * @return array
  39. */
  40. function getAddress($lat,$lng){
  41. $location = $lat.','.$lng;
  42. $url = 'http://api.map.baidu.com/geocoder?callback=renderReverse&location='.$location.'&output=json&pois=1';
  43. if(function_exists('curl_init')) {
  44. $ch = curl_init();
  45. curl_setopt($ch, CURLOPT_URL, $url);
  46. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  47. curl_setopt($ch, CURLOPT_HEADER, 0);
  48. $data = curl_exec($ch);
  49. curl_close($ch);
  50. }else{
  51. $data = file_get_contents($url,false,stream_context_create(array(
  52. "http"=>array(
  53. "method"=>"GET",
  54. "timeout"=>1
  55. ),
  56. )));
  57. }
  58. $data = json_decode($data,true);
  59. if($data && $data['status'] == 'OK' && isset($data['result']) && isset($data['result']['addressComponent']))
  60. {
  61. $province = $data['result']['addressComponent']['province'];
  62. $city = $data['result']['addressComponent']['city'];
  63. $district = $data['result']['addressComponent']['district'];
  64. }
  65. return array($province,$city,$district);
  66. }

百度API经纬度和地址互相查询的更多相关文章

  1. java根据地址获取百度API经纬度

    java根据地址获取百度API经纬度(详细文档) public void getLarLng(String address) throws Exception { String ak = " ...

  2. 利用百度API Store接口进行火车票查询

    火车票查询 项目源码下载链接: Github:https://github.com/VincentWYJ/TrainTicketQuery 博客文件:http://files.cnblogs.com/ ...

  3. PHP学习笔记:利用百度api实现手机归属地查询

    从来没有用过api,都不知道怎么获得api的数据,跟着demo,然后修改,终于实现了手机号码查询的功能,代码和说明很全,大家试试. <?php /** * Created by jianqing ...

  4. 百度地图经纬度和地址互转(Java代码)

    这是基于springmvc+mybatis 的一个controller.如果不是这个框架,可以把方法实体抽到自己写的一个类中,然后再测试 package com.uwitec.controller.s ...

  5. 百度api查询多个地址的经纬度的问题

    在使用百度api查询多个地址的经纬度的时候,由于百度api提供的经纬度查询方法是回调函数,并且后续操作必须等经纬度获取完成才能进行,问题就存在于怎么判断所有地点是否都回调完成了,问了之前的一个前端大佬 ...

  6. 腾讯云图片鉴黄集成到C# SQL Server 怎么在分页获取数据的同时获取到总记录数 sqlserver 操作数据表语句模板 .NET MVC后台发送post请求 百度api查询多个地址的经纬度的问题 try{}里有一个 return 语句,那么紧跟在这个 try 后的 finally {}里的 code 会 不会被执行,什么时候被执行,在 return 前还是后? js获取某个日期

    腾讯云图片鉴黄集成到C#   官方文档:https://cloud.tencent.com/document/product/641/12422 请求官方API及签名的生成代码如下: public c ...

  7. 百度地图JavaScript API经纬度查询-MAP

    百度地图JavaScript API经纬度查询-MAP-ABCDEFGHIJKMHNOPQRSTUVWXYZ: 搜索:<input type="text" size=&quo ...

  8. java工具类(一)之服务端java实现根据地址从百度API获取经纬度

    服务端java实现根据地址从百度API获取经纬度 代码: package com.pb.baiduapi; import java.io.BufferedReader; import java.io. ...

  9. .net根据经纬度获取地址(百度api)

    private string GetAddress(string lng, string lat) { try { string url = @"http://api.map.baidu.c ...

随机推荐

  1. 04-Python入门学习-流程控制

    一.流程控制if 语法1: if 条件:  code1  code2  code3  .... age=180 height=163 weight=75 sex='female' is_beautif ...

  2. selenium3 TestNG 介绍与配置

    一.TestNG介绍 我之前有学习过Junit,Nunit 这些工具,现在想看看TestNG,那么TestNG是什么呢?他们之间有什么区别呢? TestNG(Next Generation)是一个测试 ...

  3. ant design select placeholder不生效原因

    当select的value绑定一个state默认值时,如果默认值是''或null时,placeholder不生效 解决方案:默认值设为undefined

  4. __x__(4)0905第二天__软件架构

    软件架构 C/S 架构,客户端/服务器,用户通过客户端使用软件. 一般的应用软件都是 C/S 架构,如 QQ,360 等等. C 为 Client,用户电脑使用的软件. S 为 Server,服务器, ...

  5. CSS3_3D 变换

    3D 变换 1. 在 2D 父元素中,绕轴旋转,效果需要想象 #ele_3d { width: transform: rotateX(2deg); } rotateX 为正,元素左上角往里跑...对象 ...

  6. CSS3_元素拖曳原理_设置全局点击捕获_九宫格碰撞检测_自定义滚动条

    拖曳原理: 元素的初始位置 + 鼠标距离差 = 元素最终位置 使元素可以拖动 function dragElement(obj){ obj.onmousedown = function(e){ e = ...

  7. mobile_5 种常见适配_设备兼容

    em  参照本身元素的 font-size rem 参照 html 根元素 的 font-size 1. rem 适配   (同一元素,在不同设备上,效果一样) 适用情况: 当页面大于 独立像素375 ...

  8. [LeetCode] Goat Latin 山羊拉丁文

    A sentence S is given, composed of words separated by spaces. Each word consists of lowercase and up ...

  9. node版本升级参考

    https://www.cnblogs.com/sese/p/9557161.html

  10. CentOS6.5yum配置本地源

    进入repos.d目录 cd /etc/yum.repos.d 创建临时文件夹repo.bak(文件夹名随意起 使用root权限) 将以下文件移到repo.bak文件夹(以防备用) -rw-r--r- ...