php根据IP获取经纬度信息--百度地图篇

百度地图为我提供了一种解决方案(当然还有其他的解决方案)。

先总的来说一下,想使用百度地图的接口,除了你要写一些php(其他代码当然也能实现,本文写的是php实现)代码之外,唯一需要的就是申请一个百度地图的 密钥(免费申请,过程简单)。有了这个密钥,就相当于百度给你了一个访问百度地图api的通行证了。

百度地图的接口也分很多种,我的需求是:打开一个php页面就获取IP以及经纬度。

二、具体过程:

我会从头到尾,一步一步写出开发的过程,好了撸开袖子开干吧:

1.申请密钥(密钥和语言无关):

先访问接口文档 高精度IP定位API· ,这个页面有个“产品介绍”小节,里面有个“申请密钥”的超链接:

 单击它,跳转到申请蜜钥的页面:

 然后单击“创建应用”,到创建页面:

然后填写一个自定义的名称、写一个IP白名单(根据自己需求,可选),然后提交。

TIP:如果是第一次申请的话,百度会发手机验证码进行验证.

2.撸代码

有了密钥,看看接口文档,就开始撸代码吧。

 如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
header( "Content-type: text/html; charset=utf-8" );
?>
<?php
 
$user_ip $_SERVER [ "REMOTE_ADDR" ]; //获取客户端IP
 
get_lat_and_lng_ByIP( $user_ip );
 
//根据IP获取经纬度
function  get_lat_and_lng_ByIP( $ip )
{
     if ( empty ( $ip ))
     {
          return  'IP不能为空' ;
     }
      $content  file_get_contents ( "http://api.map.baidu.com/highacciploc/v1?qcip=$ip&qterm=pc&ak=请输入您的AK&coord=bd09ll" ); 
      $json  = json_decode( $content );
      
      $lng = $json ->{ 'content' }->{ 'location' }->{ 'lng' }; //提取经度数据
       
          $lat = $json ->{ 'content' }->{ 'location' }->{ 'lat' }; //提取纬度数据
 
      echo  "当前经度:" . $lng ;
      echo  "<br/>" ;
     
      echo  "当前纬度:" . $lat ;
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值