你能帮我理解为什么我的最后一个 ip2long 是空的吗?

问题描述

我已经战斗了几个小时......

我想了解我的 ip 是否包含在 ip 范围列表中。

列表来自一个文件,我做了一个 foreach 和一个 if

if(ip2long($_SERVER['REMOTE_ADDR']) >= ip2long($start) && ip2long($_SERVER['REMOTE_ADDR']) <= ip2long($end)){
    echo 'found';
}

...它不起作用...

我认为原因是这样的,如果在我的 foreach 中添加

echo '<br>my '.$_SERVER['REMOTE_ADDR'].' - start '.$start.' - end '.$end.' --- my long '.ip2long($_SERVER['REMOTE_ADDR']).' - start long '.ip2long($start).' - end long '.ip2long($end);

我得到的结果如下:

my 146.241.156.220 - start 146.241.0.0 - end 146.241.255.255 --- my long 2465307868 - start long 2465267712 - end long
my 146.241.156.220 - start 1.6.0.0 - end 1.7.255.255 --- my long 2465307868 - start long 17170432 - end long
my 146.241.156.220 - start 1.22.0.0 - end 1.23.255.255 --- my long 2465307868 - start long 18219008 - end long
my 146.241.156.220 - start 1.38.0.0 - end 1.39.255.255 --- my long 2465307868 - start long 19267584 - end long
my 146.241.156.220 - start 1.186.0.0 - end 1.187.255.255 --- my long 2465307868 - start long 28966912 - end long 

“终了”去哪儿了? ip2long($end)

$end 存在,有效,但 ip2long($end) 为空...

为什么?什么?在哪里?谁?

我已经为此挣扎了几个小时,但有些东西不起作用,你能帮我摆脱这种混乱吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)