【发布时间】:2015-05-20 09:51:44
【问题描述】:
我正在尝试使用 ip2long 压缩 IP,如本教程中所述:
How to check an IP address is within a range of two IPs in PHP?
代码如下:
$ip2 = ip2long("127.0.0.1");
$high_ip = ip2long("128.0.0.0");
$low_ip = ip2long("126.0.0.1");
if ($ip2 <= $high_ip && $low_ip <= $ip2) {
echo "in range";
}
else {
echo "no";
}
我已经试过切换高低IP,结果还是一样。
为什么我的脚本无法检测到 IP 实际上在范围内?
注意:我需要将用户的 IP 与广泛的范围进行比较,例如:1.1.2.0 - 1.2.2.0。
【问题讨论】:
-
请说明投反对票的原因
-
先生,$ip2 在哪里?看起来那里有打字错误。 (虽然没有投反对票)
-
当我运行您的代码时,纠正 $ip 变为 $ip2 的拼写错误,我得到“在范围内”。
-
我修复了代码,由于某种原因仍然得到“否”
-
这里与@kainaw 相同。你确定你修复了 both $ip2 吗?有 2 个 $ip2。 prntscr.com/6i0o82