首页 > 解决方案 > 你能帮我理解为什么我的最后一个 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) 为空...

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

我已经为此奋斗了几个小时,但有些东西不起作用,你能帮我摆脱这个烂摊子吗?

标签: phpip2long

解决方案


推荐阅读