ip-location-zh 完全指南:PHP 如何 3 分钟搞定无需数据库的 IP 地理位置查询?

ip-location-zh 完全指南:PHP 如何 3 分钟搞定无需数据库的 IP 地理位置查询? ip-location-zh 完全指南PHP 如何 3 分钟搞定无需数据库的 IP 地理位置查询【免费下载链接】ip-location-zh获取 IP 地址的真实地理位置项目地址: https://gitcode.com/gh_mirrors/ip/ip-location-zhip-location-zh 是一款免费、无需数据库的 PHP IP 地理位置查询库只需一行Ip::find()就能把任意 IP 解析为「中国 河南 郑州」这样的中文地址并附带行政区划代码。本文带你 3 分钟完成安装、上手与原理速览。 ip-location-zh 是什么适合谁用如果你想在 PHP 项目里做访客定位、日志审计、风控识别又不想搭建 IP 数据库它就是一个专注的「小而美」方案特点说明 零数据库地理数据打包成一个二进制文件src/20190703.ipdb装完即用不依赖 MySQL / Redis 中文数据数据源自 IPIP国内地址精确到市级国外地址同样可查详细度略低⚡ 一个方法核心 API 只有一个静态方法find学习成本约等于零 双栈支持同时支持 IPv4 与 IPv6 解析实现见src/Ip.php中的findNode 免费MIT 协议适合预算有限、需求简单的个人与中小项目⏱️ 3 分钟安装步骤composer 一条命令搞定第 1 步安装 composer若已安装可跳过然后执行composer require zhuzhichao/ip-location-zh第 2 步确认数据包到位。安装后检查项目下是否存在src/20190703.ipdb文件它就是全部数据库。第 3 步可选获取源码阅读git clone https://gitcode.com/gh_mirrors/ip/ip-location-zh无需任何配置项、无需建表导数据——到这里安装就全部完成了 ✅ 最快使用方法一行代码查询 IP 地理位置?php require vendor/autoload.php; use Zhuzhichao\IpLocationZh\Ip; var_dump(Ip::find(171.12.10.156));返回一个 5 元素数组下标01234含义国家省/直辖市市区预留位行政区划代码示例中国河南郑州空字符串410100 行政区划代码可直接用于地图定位、区域运营等业务场景完整省市对照表可通过Ip::locations()获取。 Laravel 项目优雅接入Laravel 用户可以直接用Ip::find(Request::getClientIp())拿到当前访问者的城市Laravel 5.5包已内置服务发现见composer.json的extra.laravel.aliases装完即用什么都不用改Laravel 5.0 – 5.4在config/app.php的aliases中加一行Ip Zhuzhichao\IpLocationZh\Ip即可 核心原理为什么它不需要数据库二进制索引树src/20190703.ipdb采用 IPIP 的 ipdb 格式前半部分是二进制树索引查询时按 IP 的比特位逐层向下查找节点定位极快进程级内存缓存首次查询时打开文件并缓存读取器单例同一 IP 的重复查询直接命中内存缓存self::$cached几乎零开销单文件即数据整个数据库就一个文件备份、迁移、上云都只要拷贝这一个文件⚠️ 边界情况与注意事项输入行为非法 IP如abc抛出InvalidArgumentException空字符串返回N/A本机地址127.0.0.1返回「本机地址」国外 IP可查到但详细度低于国内另外请知悉该免费库不提供经纬度、运营商、区县级等更细内容数据包更新于 2019-07-03更新周期不定期。如有更高精度的商业需求建议对接 IPIP 的付费服务。 文件结构速览文件说明src/Ip.php核心类Zhuzhichao\IpLocationZh\Ip含find查询与locations区划代码src/20190703.ipdb二进制地理数据文件IPIP 格式tests/TestIp.php单元测试验证郑州、杭州、本机地址等典型查询结果composer.json包元数据包名zhuzhichao/ip-location-zhLicense.txtMIT 开源协议总结ip-location-zh 用「一个文件 一个方法」的极简设计把 IP 地理位置查询从要部署数据库降低到一条 composer 命令。对于日志城市标签、访问统计、简单风控等场景它是一个开箱即用、值得收藏的免费 PHP 工具。【免费下载链接】ip-location-zh获取 IP 地址的真实地理位置项目地址: https://gitcode.com/gh_mirrors/ip/ip-location-zh创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考