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. BZOJ5254 : [Fjwc2018]红绿灯

    显然所有询问都要经过至少$\sum d$,只需要考虑除了$\sum d$之外的等待红灯的时间. 将所有询问的时间模$g+r$,并按时间用set维护. 那么对于每个红灯,在set中可以找出$1$到$2$ ...

  2. MySQL中count函数使用方法详解

      count函数是用来统计表中或数组中记录的一个函数,下面我来介绍在MySQL中count函数用法与性能比较吧. count(*) 它返回检索行的数目, 不论其是否包含 NULL值. SELECT ...

  3. codecademy课程笔记——JavaScript Promise

      Promise是一种表示异步操作最终的结果的对象,一个Promise对象有三种状态 Pending: 初始状态 ,操作还未完成 Fullfilled:操作成功完成,且这个promise现在有一个r ...

  4. Tensorflow Chapter-6

    |--子节点 |--单位节点矩阵:长宽为1,深度不限 |--多维度的二维卷积,和之前的理解不一样:应该是每个通道都要计算在下一层的每个节点上:2*2*3,f=1*1*5 -> 2*2*3*5个参 ...

  5. SSM 记录

    前言:本过程从0开始,先是导入最核心的jar包,然后随着ssm中的功能实现,打包===>启动===>报错,一步步解决问题,增加额外的必须的jar包来熟悉ssm 1.导包(核心包) myba ...

  6. laradock

    配置xdebug:http://m.php.cn/article/407434.html

  7. B-Tree与B+Tree简明扼要的区别

    原文:https://blog.csdn.net/zhuanzhe117/article/details/78039692 看了很多讲B树和B+树的文章,大多都是围绕各自的特性讲的,第一,树中每个结点 ...

  8. linux查看所有用户信息

    所有的用户信息在根目录/etc/中passwd文件内,而passwd的所有权限是root用户及root组用户,所有想要查看所有用户,需要root用户登录系统. root用户登录后,可以直接用查看命令c ...

  9. Elasticsearch学习笔记(五)索引元数据和集群元数据

    一.索引元数据 执行:GET /ecommerce/product/1 返回结果: {   "_index": "ecommerce",   "_ty ...

  10. SQL中ON和WHERE的区别(转)

    原文:https://www.cnblogs.com/guanshan/articles/guan062.html 数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时 ...