探讨PHP函数ip2long转换IP时数值太大产生负数的解决方法


Posted in PHP onJune 06, 2013

【造成原因】:Because PHP's integer type is signed, and many IP addresses will result in negative integers.
【解决办法】:其官方手册中提到,可以“you need to use the "%u" formatter of sprintf() or printf() to get the string representation of the unsigned IP address”
即,printf( '%u', ip2long( 'IP地址' ) );
或者将其先转换为二进制然后在转换为十进制,bindec( decbin( ip2long( 'IP地址' ) ) );
【测试】
$strIp = '182.118.0.0';

echo ip2long($strIp); //此时输出的-1233780736
echo '<br/>';
echo bindec( decbin( ip2long( $strIp ) ) ); // 输出3061186560,与MySQL函数输出一致~

【注】:
number bindec ( string $binary_string ); //二进制转换为十进制
string decbin ( int $number ); //十进制转换为二进制

以上这篇探讨PHP函数ip2long转换IP时数值太大产生负数的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
VFP与其他应用程序的集成
Oct 09 PHP
在PHP中执行系统外部命令
Oct 09 PHP
php获取当前网址url并替换参数或网址的方法
Jun 06 PHP
PHP自定义函数收代码
Aug 01 PHP
PHP的curl实现get,post和cookie(实例介绍)
Jun 17 PHP
探讨:php中在foreach中使用foreach ($arr as &amp;$value) 这种类型的解释
Jun 24 PHP
php ci框架验证码实例分析
Jun 26 PHP
基于PHP实现栈数据结构和括号匹配算法示例
Aug 10 PHP
PHP设计模式之简单工厂和工厂模式实例分析
Mar 25 PHP
php实例化一个类的具体方法
Sep 19 PHP
php输出形式实例整理
May 05 PHP
Yii 框架入口脚本示例分析
May 19 PHP
php IP转换整形(ip2long)的详解
Jun 06 #PHP
php全局变量和类配合使用深刻理解
Jun 05 #PHP
php数组声明、遍历、数组全局变量使用小结
Jun 05 #PHP
PHP Global变量定义当前页面的全局变量实现探讨
Jun 05 #PHP
PHP 常用数组内部函数(Array Functions)介绍
Jun 05 #PHP
php将gd生成的图片缓存到memcache的小例子
Jun 05 #PHP
深入理解require与require_once与include以及include_once的区别
Jun 05 #PHP
You might like
最简单的PHP程序--记数器
2006/10/09 PHP
php操作sqlserver关于时间日期读取的小小见解
2009/11/29 PHP
PHP的PSR规范中文版
2013/09/28 PHP
PHP获取MySQL执行sql语句的查询时间方法
2018/08/21 PHP
基于Laravel 5.2 regex验证的正确写法
2019/09/29 PHP
不间断滚动JS打包类,基本可以实现所有的滚动效果,太强了
2007/12/08 Javascript
Jquery调用webService远程访问出错的解决方法
2010/05/21 Javascript
jQuery.extend 函数的详细用法
2012/06/27 Javascript
jquery实现瀑布流效果分享
2014/03/26 Javascript
js鼠标悬浮出现遮罩层的方法
2015/01/28 Javascript
一个极为简单的requirejs实现方法
2016/10/20 Javascript
js 转json格式的字符串为对象或数组(前后台)的方法
2016/11/02 Javascript
nodejs multer实现文件上传与下载
2017/05/10 NodeJs
对Angular中单向数据流的深入理解
2018/03/31 Javascript
在Vue-cli里应用Vuex的state和mutations方法
2018/09/16 Javascript
vue结合element-ui使用示例
2019/01/24 Javascript
图文详解vue框架安装步骤
2019/02/12 Javascript
javascript利用canvas实现鼠标拖拽功能
2020/07/23 Javascript
[01:02:48]2018DOTA2亚洲邀请赛小组赛 A组加赛 Newbee vs Liquid
2018/04/03 DOTA
详解Python里使用正则表达式的ASCII模式
2017/11/02 Python
Python实现PS滤镜功能之波浪特效示例
2018/01/26 Python
Python 实现判断图片格式并转换,将转换的图像存到生成的文件夹中
2020/01/13 Python
Python获取二维数组的行列数的2种方法
2020/02/11 Python
Python基础之字符串常见操作经典实例详解
2020/02/26 Python
法雷奥SQA(electric)面试问题
2016/01/23 面试题
平面设计的岗位职责
2013/11/08 职场文书
办公室助理岗位职责
2013/12/25 职场文书
宿舍打麻将检讨书
2014/01/24 职场文书
庆七一宣传标语
2014/10/08 职场文书
个人自荐书怎么写
2015/03/26 职场文书
2015年银行个人工作总结
2015/05/14 职场文书
让人瞬间清醒的句子,句句经典,字字如金
2019/07/08 职场文书
小型企业的绩效考核制度模板
2019/11/21 职场文书
vue实现Toast组件轻提示
2022/04/10 Vue.js
Python selenium绕过webdriver监测执行javascript
2022/04/12 Python
SQL Server携程核心系统无感迁移到MySQL实战
2022/06/01 SQL Server