mileschou/twnicip

Twnic IP

v1.0.5 2024-04-17 07:55 UTC

This package is auto-updated.

Last update: 2024-09-17 08:51:28 UTC


README

tests codecov Codacy Badge Latest Stable Version Total Downloads License

检查是否为台湾IP的小工具。

台湾IP没有想象中那么多,这个工具是直接把找到的数据转换成PHP原生变量类型的「数据库」,再使用另一个 外观 进行搜索。

原始数据库不能修改,只能通过原仓库更新,而外观层则可以动态标记IP是否为台湾IP。

版本

  • 0.x 版本支持 PHP 7.1 ~ 8.0
  • 1.x 版本支持 PHP 8.0+

安装

通过 Composer 即可安装:

composer require mileschou/twnicip

使用

这是主要的验证IP来源的类,使用下面三个方法来确认是否是台湾IP:

$twnicIp = new TwnicIp();

$twnicIp->isTaiwan('202.39.128.1'); // isTaiwanByIp() 的別名
$twnicIp->isTaiwanByIp('202.39.128.1');
$twnicIp->isTaiwanByLong(3391586305); // 轉成 IP 即 202.39.128.1 

如果有新加入的IP,但原始仓库没有更新时,可以自行添加:

$twnicIp->includeRange('127.0.0.1', '127.0.0.1');

$twnicIp->isTaiwan('127.0.0.1'); // return true

同理,如果某个区段的IP需要被排除时,也可以自行处理:

$twnicIp->excludeRange('127.0.0.1', '127.0.0.1');

$twnicIp->isTaiwan('127.0.0.1'); // return false

私有域在狭义上并不属于台湾的IP。而实际上,机器在台湾,某种程度也算作台湾的IP!

如果想把私有域当作台湾IP的话,可以额外调用下面这个方法:

$twnicIp->includePrivateIp();

里面实际上只是调用 includeRange() 把私有IP的范围加入。

参考

许可证

The MIT License (MIT)。请参阅许可证文件获取更多信息。