最近酷乐在项目中遇到一个需要获取用户IP信息并查询出用户地理位置信息的需求,代码如下:
1.首先获取用户具体的IP信息。

<?php
function getClientIp(){if (getenv('HTTP_CLIENT_IP')) {$ip = getenv('HTTP_CLIENT_IP');}if (getenv('HTTP_X_REAL_IP')) {$ip = getenv('HTTP_X_REAL_IP');} elseif (getenv('HTTP_X_FORWARDED_FOR')) {$ip = getenv('HTTP_X_FORWARDED_FOR');$ips = explode(',', $ip);$ip = $ips[0];} elseif (getenv('REMOTE_ADDR')) {$ip = getenv('REMOTE_ADDR');} else {$ip = '0.0.0.0';}return $ip;
}

2.通过获取到的IP信息调用接口查询用户的地理位置。

<?php
function info($ip){$url = file_get_contents("http://ip.taobao.com/outGetIpInfo?ip=$ip&accessKey=alibaba-inc");$res1 = json_decode($url,true);$data =$res1;if ($data) {return $data['data'];} else {return 'unknown';}}
<?php
$userip=getClientIp(); //把获取IP函数赋值给userip变量
$info = info($userip);//引用info函数并把userip变量带入赋值给info变量。

利用IP地址获取用户的地理位置信息相关推荐

  1. 获取用户精准地理位置信息(百度地图)

    获取用户精准地理位置信息步骤: 1.通过 navigator.geolocation.getCurrentPosition(showPosition, showError); 方法获取经纬度: 2.使 ...

  2. android根据ip获取查询省份,通过IP地址获取省份城市位置信息

    private String mResult = null; private String mProvinceName; //省份 private String mChCityName; //城市 p ...

  3. 通过百度地图API获取用户所在地理位置信息

    目录 1.密匙申请 2.源代码 3.结果展示 1.密匙申请 使用以下源码前,请先去百度地图开发平台申请密匙,前去申请:立即申请 2.源代码 此次定位代码是通过H5的方式实现的 <html> ...

  4. 引用Geoip实现由IP地址获取国家城市等信息

    需求 当我们知道用户ip的情况下,需要统计用户所属的国家/省份/城市等信息. 这时可以用开源的Geoip2 避免重复造轮子. github地址:https://github.com/maxmind/G ...

  5. 手机端或PC端利用高德地图和腾讯地图获取用户当前位置信息

    目录 一.简介 二.高德地图 三.腾讯地图 四.总结 一.简介 最近在项目中,有需要使用到获取用户当前地理位置信息的功能,获取当前用户位置保存到数据库中的场景,并且需要支持多种地图定位方式,我这里采用 ...

  6. java 根据IP地址获取地理位置

    来源:http://www.ipplus360.com/tech/api/ 来源:http://blog.csdn.net/Cryhelyxx/article/details/40862101 精确查 ...

  7. 如何获取用户的地理位置-浏览器地理位置(Geolocation)API 简介

    如何获取用户的地理位置-浏览器地理位置(Geolocation)API 简介 一.总结 一句话总结:Geolocation API(地理位置应用程序接口)提供了一个可以准确知道浏览器用户当前位置的方法 ...

  8. LBS:利用IP地址,获取地理位置

    工作上的任务:依据客户的IP地址,获取其IP对应的经纬度,从而得到其地理位置.最好精确到市.区.镇.街道.门牌号.代码如下. 原始的表格文件如下所示:. logindate loginip custo ...

  9. 如何根据普通ip地址获取当前地理位置(利用百度API)

    前言: 我们现在需要做的功能是根据ip地址获取当前地理位置,是Web 服务API,获取后的位置信息一般是城市级别的,不是很精确的那种获取. (1)开发者需要做的准备工作: 需要登录百度地图的api,点 ...

最新文章

  1. vue——组件之elementTable组件再封装
  2. android webview tel:,Android WebView“tel:”链接显示未找到网页
  3. sqlserver2000 mdf 文件导入
  4. oracle rman 用户,对Oracle数据库进行RMAN备份的Oracle数据库用户权限
  5. Tomcat学习笔记(一)
  6. Python《搞事情==蜂-鸟-图-片(一)》
  7. java将图片(jpg/bmp/png)转16位bmp(RBG565)
  8. 多通路fpga 通信_基于USB通信的FPGA高速数据采集系统研究
  9. 统一操作系统 UOS 官网正式上线;旷视回应“戴口罩人脸识别”;IntelliJ IDEA 2019.3.3 发布 | 极客头条...
  10. 软件测试工程师的工作总结
  11. 设置a标签下载文件的文件名
  12. cold start
  13. 计算机设备系统包括哪些,计算机硬件系统包括哪些
  14. 天池竞赛——工业蒸汽量预测(完整代码详细解析)
  15. 为什么raw图是绿色的?
  16. Photoshop滤镜给城市夜空添加满天星光
  17. 6个非常实用的 Python 代码块,适合收藏~
  18. Objective-c中Category的用法
  19. 一个故事轻松记忆常见252个英语字根(141~189)
  20. 遗传算法计算函数最小值(多维)

热门文章

  1. 通过硬件架构设计应对“熔断”和“幽灵”等CPU漏洞
  2. 某音批量发私信的思路
  3. 阜阳计算机专业国考,安徽公务员考试阜阳还有哪些岗位可以报考?
  4. Android 视频截图方法
  5. 你对【瑞文代码推土机】的第一次
  6. 华硕台式电脑计算机,解决方案:华硕台式计算机重新安装系统
  7. 【CTA系列】复合中短周期双均线策略
  8. BIM 的市场行情怎么样?
  9. vue:组件自定义事件、绑定、解绑事件
  10. 三分钟带你了解,新颖独特的卖货模式——抖店无货源