ilkermutlu/ip-range-checker

该软件包是一个用于检查给定IP地址是否在特定IP范围内的辅助工具。

该软件包的规范仓库似乎已消失,因此该软件包已被冻结。

1.2.1 2017-05-30 11:05 UTC

This package is not auto-updated.

Last update: 2023-02-28 16:29:31 UTC


README

这是一个简单的辅助软件包,当需要检查IP是否在给定的IP范围内时,我会使用它。

欢迎所有想法、贡献和批评。

安装

composer require ilkermutlu/ip-range-checker

用法

在您的脚本中导入类

use IlkerMutlu\IPRangeChecker\Checker;

$ip = '192.168.0.22';
$checker = Checker::forIp($ip);

将起始IP和结束IP以数组形式传递给setRange()方法。

$checker->setRange([
    '192.168.0.1',
    '192.168.0.28'
]);

// $checker->check() will return true for IPs between
// 192.168.0.1 and 192.168.0.28
// 192.168.0.19 will return TRUE
// 192.168.1.41 will return FALSE

您也可以使用通配符。

$checker->setRange('192.168.0.*');

// $checker->check() will return TRUE for IPs between
// 192.168.0.1 and 192.168.0.255
// 192.168.0.41 will return TRUE
// 192.168.1.41 will return FALSE

或者,您可以用连字符分隔两个IP地址。

$checker->setRange('192.168.0.4-192.168.0.54');

// $checker->check() will return TRUE for IPs between
// 192.168.0.4 and 192.168.0.54
// 192.168.0.41 will return TRUE
// 192.168.0.61 will return FALSE

设置范围后,只需在检查实例上调用check()方法,它将返回一个布尔值。

$checker->check();

待办事项

  1. 测试
  2. 支持以连字符分隔的IP范围字符串
  3. 支持CIDR