ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

如何快速上手 ip-location-zh:一行 composer 命令,即刻获取 IP 省市与行政区划代码

2026/8/26 20:04:30 拓冰建站 浏览量
如何快速上手 ip-location-zh:一行 composer 命令,即刻获取 IP 省市与行政区划代码 如何快速上手 ip-location-zh一行 composer 命令即刻获取 IP 省市与行政区划代码【免费下载链接】ip-location-zh获取 IP 地址的真实地理位置项目地址: https://gitcode.com/gh_mirrors/ip/ip-location-zhip-location-zh是一个免费的 PHP 离线 IP 地理位置查询库通过 IP 地址一行代码即可查出该 IP 所属的国家、省份、城市以及中国行政区划代码支持到市级无需数据库、无需 API Keycomposer一条命令即可安装使用。 为什么选择 ip-location-zh很多项目都需要知道这个用户从哪来——日志留痕、风控防刷、区域化运营都会用到 IP 归属地。而大多数方案要么依赖第三方接口慢、收费、受网络影响要么要自己维护数据库。ip-location-zh 的思路简单直接内置一份离线 ipdb 数据库文件纯 PHP 本地读取即装即用。它有几个很实用的特点✅零配置——不依赖任何数据库装好就能查✅功能专注——只做一个find方法学习成本几乎为零✅composer 标准管理——升级包即可更新数据库✅自带行政区划代码——返回结果中包含省级/市级行政区划编码做表单级联、地区校验特别方便 注意这是免费离线库不提供经纬度、运营商、邮编等更细的信息国外 IP 可以查到但精度不如国内。需求简单的场景省钱、求快非常合适。 一键安装步骤确保你已安装 PHP Composer安装 Composer 不在本文范围内然后在项目根目录执行composer require zhuzhichao/ip-location-zh就这一行。执行完成后离线数据库文件20190703.ipdb会随包一起就位位于src/目录下库会自动加载它不需要你做任何额外配置。 3 行代码完成 IP 省市查询安装完成后最小可用示例只有 3 行require vendor/autoload.php; use Zhuzhichao\IpLocationZh\Ip; var_dump(Ip::find(171.12.10.156));返回一个数组结构固定下标含义示例值0国家中国1省份河南2城市郑州3区县当前为空空字符串4行政区划代码410100410100正是郑州市的行政区划代码——库内置了全国省市的编码映射见 Ip.php 中的locations()方法查省份级会返回省级编码查城市级则精确到市级。其他查询效果来自 TestIp.php 的测试用例查询 IP返回的省市行政区划代码110.223.0.43中国 · 山东370000110.75.115.70中国 · 浙江 · 杭州330100127.0.0.1本机地址—⚡ Laravel 项目中的优雅用法如果项目用的是 Laravel体验会更顺执行上面的composer require安装Laravel 5.5支持服务包自动发现无需任何注册配置Laravel 5.0–5.4 则需在config/app.php的aliases中加入Ip Zhuzhichao\IpLocationZh\Ip包的composer.json里已预置了该别名映射直接在任意控制器里使用Ip::find(171.12.10.156); // 或者直接取当前访问者的真实 IP Ip::find(request()-getClientIp()); 项目文件结构一览项目结构非常小巧核心就两个文件文件作用src/Ip.php唯一的类文件Ip::find()查询归属地Ip::locations()获取全国省市行政区划编码src/20190703.ipdbIPIP 离线数据库约 3.5MB文件名即数据版本号tests/TestIp.phpPHPUnit 测试用例可直接验证查询结果composer.json包定义与 PSR-4 自动加载配置License.txtMIT 开源协议❓ 常见疑问FAQQ1IP 无效会怎样传入空值返回N/A传入非法格式如999.1.1.1会抛出InvalidArgumentException查不到的 IP 同样返回N/A建议调用前用filter_var($ip, FILTER_VALIDATE_IP)预校验。Q2数据是最新的吗数据库为 2019-07-03 版本由作者不定期更新。执行composer update即可获取新版数据文件。Q3性能如何查询是纯本地文件读取二分定位 位树遍历且查询结果做了内存缓存——同一 IP 第二次查询直接命中缓存高频调用毫无压力。 小结如果你需要一个免费、离线、零配置的 PHP IP 归属地方案composer require zhuzhichao/ip-location-zh然后一行Ip::find($ip)就能拿到国家 / 省 / 市 / 行政区划代码——从安装到跑通不超过 1 分钟这就是 ip-location-zh 的简单之道。【免费下载链接】ip-location-zh获取 IP 地址的真实地理位置项目地址: https://gitcode.com/gh_mirrors/ip/ip-location-zh创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考