IP地址和整型互转,常见的自然是用php自带的系统函数ip2long与long2ip
然,ip地址转整型的时候却存在几个问题需要注意:
1.ip的组成字符串中,若是某段出现填充0的情况,结果就会出现错误。代码如下
$ip = '192.168.01.115';
var_dump($ip); echo "<br/>";
$intip = ip2long($ip);
var_dump($intip); echo "<br/>";
$ip = long2ip($intip);
var_dump($ip);
输出结果如下:
string '192.168.01.115' (length=14)
boolean false
string '0.0.0.0' (length=7)
2.ip转整型也会出现有符号的结果,需要注意处理。代码如下
$ip = '192.168.1.115';
var_dump($ip); echo "<br/>";
$intip = ip2long($ip);
var_dump($intip); echo "<br/>";
$ip = long2ip($intip);
var_dump($ip);
输出结果如下: