如何定义变量的IP地址范围

时间:2018-12-31 17:39:41

标签: php ip preg-match

我想在php中设置一个IP地址范围

如何在PHP中以正确的方式在行下方编写代码?

$block_renge = array("192.168.*.*", "10.10.*.*");

我希望*为任意数字(0-255)。有人可以帮我的忙吗

然后我用以下代码检查IP:

if ( ( in_array( $ip_address, $block_renge ) ) ) {
// do some stuff
//$ip_address is the customer ip address

也许可以使用preg_match做到这一点?

1 个答案:

答案 0 :(得分:1)

使用ip2long()long2ip()

$(NetworkPath)\PreviousVersions

上面的代码将两个IP地址转换为数字(使用PHP核心功能),创建一个数字范围,然后将该数字范围转换为IP地址。

如果您希望它们之间用空格隔开,只需function ip_range($from, $to) { $start = ip2long($from); $end = ip2long($to); $range = range($start, $end); return array_map('long2ip', $range); } 即可。

然后您可以使用

implode()