首页  >  文章  >  后端开发  >  PHP函数ip2long()实现IP转换成整型时出现负数的解决方法

PHP函数ip2long()实现IP转换成整型时出现负数的解决方法

WBOY
WBOY原创
2016-07-25 08:57:401600浏览
  1. $ip = "192.168.1.2";
  2. $ip_n = ip2long($ip);
  3. echo $ip_n; //得到 -1062731518
  4. ?>
复制代码

原因: IP转换成的整型值太大超出了整型的范围,所以变成负数。

需要做如下的修改,修改为$ip_n = bindec(decbin(ip2long($ip)))即可得到无符号的整型数。

例如:

  1. $ip = "192.168.1.2";
  2. $ip_n = bindec(decbin(ip2long($ip)));
  3. //by bbs.it-home.org
  4. echo $ip_n; //得到 3232235778
  5. ?>
复制代码


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn