博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP 使用 GeoLiteCity 库解析 IP 为地理位置
阅读量:7041 次
发布时间:2019-06-28

本文共 3853 字,大约阅读时间需要 12 分钟。

关于把 IP 地址转换为地理位置可以使用网络上很多的 API,好处就是不用在本地存储一个 IP 数据库,而且一般网络上的 IP 库会自动更新,不利的地方就是太依赖于网络,性能表现也可能会弱些。比如像下面的 API:

这里介绍 PHP 如何使用 GeoLiteCity.dat 库把 IP 转换为地理位置,GeoLiteCity.dat 可以在 下,解压出 GeoLiteCity.dat,即可,我们可以手动去更新新的 IP 库。

下面 PHP 解析 IP 的过程参考自 WordPress 插件  的实现。可以找到该插件的两个文件  和  告诉了我们怎么做。你可以点击这里的链接下载到这两个文件,我这里把 include-whos-online-geoip.php 改名为 geoipcity.inc.php,然后参考 visitor-maps.php 中的 get_location_info($user_ip) 函数,那么我们可以写出自己的解析 IP 地址的程序 resolve_ip.php:

执行后输出如下(可以作为系统脚本直接用 php resolve_ip.php 来执行):

只要取你想要的数据就是了,里面还有诸如区号,邮编等数所,GeoLiteCity.dat 是个二进制文件,比普通文本要紧凑省空间。

不知道您有没有多留一份心,有无浏览链接:,是这样的:

Geoip

看到 GeoIp 给我们提供了不少的例子,那么多 sample.php,而实际上前面用到的 geoipcity.inc.php,就是 geopip.inc、geoipcity.inc 和 geoipregionvars.php 三个程序的内容合体。

再往上看:

 

GeoIp

官方提供的 API 何止 PHP 啊,几乎能全线满足您的实际需求了,c、java、perl、python、vb、ruby、tcl 等......,放其他程序里以后也不用愁了。

再进到  瞧瞧:

GeoIP

正考虑着呢,不是说 IPv4 快用净了吗?IPv6 的数据也正为我们准备着呢?当然,天朝的 IPv9 恐怕永远不会有的。

本只是把  里的解析 IP 的做法抽出来用用,可总能不断 深入再深入,不知道可喜还是可怕了。

本文链接 , 来自 

转载地址:http://vjxal.baihongyu.com/

你可能感兴趣的文章
Skype for Business Server 2015-04-前端服务器-7-部署
查看>>
你的Postfix邮件服务器安全么?
查看>>
站在巨人肩膀看清IT馅饼和陷阱
查看>>
Android系统匿名共享内存(Anonymous Shared Memory)C++调用接口分析(4)
查看>>
Windows 7 的一些使用技巧
查看>>
Spring Boot中使用Redis数据库
查看>>
完整性检查工具Nabou
查看>>
Exchange企业实战技巧(26)在Outlook中打开多个邮箱
查看>>
一个Linux小型综合实验
查看>>
软件定义架构让超融合世界更加复杂
查看>>
Wi-Fi当前的趋势及对IT和物联网的影响
查看>>
服务器遭受攻击后 该如何有效地处理?
查看>>
未来 Web 设计的 7 大趋势
查看>>
赛门铁克推生物特征识别科技 告别密码
查看>>
原来CSS这样写是会让App崩溃的
查看>>
《Cocos2D权威指南》——第2章 你的第一款iPhone游戏—垂直射击游戏 2.1 准备工作...
查看>>
信息化技术让智慧城市感知增强
查看>>
AI 从业者该如何选择深度学习开源框架丨硬创公开课
查看>>
OA产品:市场需求推动OA发展
查看>>
史上最大 DDoS 攻击曝光,没想到还有这么多人拿“12345”当密码
查看>>