Twnic IP
檢查是否為台灣 IP 的小工具,台灣 IP 沒想像中多,所以直接把找到的資料轉成 PHP 原生變數型態的「資料庫」,再使用另一個 Facade 做搜尋。
原則上 Database 是不能修改的,只能靠原 repo 更新。
Installation
透過 Composer 即可安裝:
composer require mileschou/twnicip
TwnicIp
這是主要驗證 IP 來源的 class,使用下面三個方法來確認是否是台灣 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,但原始 repo 沒有更新時,可以自行新增:
$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
References
- Twnic IP 列表 - 但此文件看起來已過時,因此改採用其他資料庫
- IP2LOCATION Lite - 免費且完整的資料庫,目前是使用這個
License
The MIT License (MIT). Please see License File for more information.