探讨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 相关文章推荐
一个简单的PHP入门源程序
Oct 09 PHP
php将数据库中所有内容生成静态html文档的代码
Apr 12 PHP
PHP循环语句笔记(foreach,list)
Nov 29 PHP
PHP5.3与5.5废弃与过期函数整理汇总
Jul 10 PHP
PHP对象递归引用造成内存泄漏分析
Aug 28 PHP
Smarty中常用变量操作符汇总
Oct 27 PHP
浅析php适配器模式(Adapter)
Nov 25 PHP
使用PHP生成二维码的方法汇总
Jul 22 PHP
Thinkphp微信公众号支付接口
Aug 04 PHP
浅谈php中curl、fsockopen的应用
Dec 10 PHP
PHP读取、解析eml文件及生成网页的方法示例
Sep 04 PHP
解决laravel资源加载路径设置的问题
Oct 14 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 时间计算问题小结
2009/01/04 PHP
PHP 程序授权验证开发思路
2009/07/09 PHP
php file_get_contents函数轻松采集html数据
2010/04/22 PHP
php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
2014/12/15 PHP
javaScript对象和属性的创建方法
2007/01/15 Javascript
json跟xml的对比分析
2008/06/10 Javascript
javascript深入理解js闭包
2010/07/03 Javascript
javascript setAttribute, getAttribute 在不同浏览器上的不同表现
2010/08/05 Javascript
jquery下checked取值问题的解决方法
2012/08/09 Javascript
jquery表单验证使用插件formValidator
2012/11/10 Javascript
extjs ColumnChart设置不同的颜色实现代码
2013/05/17 Javascript
javascript模拟地球旋转效果代码实例
2013/12/02 Javascript
javascript删除数组元素并且数组长度减小的简单实例
2014/02/14 Javascript
jQuery实现在列表的首行添加数据
2015/05/19 Javascript
jQuery javascript获得网页的高度与宽度的实现代码
2016/04/26 Javascript
js仿淘宝和百度文库的评分功能
2016/05/15 Javascript
javaScript如何跳出多重循环break、continue
2016/09/01 Javascript
JavaScript实现的鼠标响应颜色渐变效果完整实例
2017/02/18 Javascript
20行js代码实现的贪吃蛇小游戏
2017/06/20 Javascript
JS实现瀑布流布局
2017/10/21 Javascript
opencv 识别微信登录验证滑动块位置
2018/08/07 Javascript
cdn模式下vue的基本用法详解
2018/10/07 Javascript
JS基于ES6新特性async await进行异步处理操作示例
2019/02/02 Javascript
vuex 中插件的编写案例解析
2019/06/10 Javascript
JS中比Switch...Case更优雅的多条件判断写法
2019/09/05 Javascript
vue实现配置全局访问路径头(axios)
2019/11/01 Javascript
如何使用vue slot创建一个模态框的实例代码
2020/05/24 Javascript
Python创建二维数组实例(关于list的一个小坑)
2017/11/07 Python
Python面向对象之类的封装操作示例
2019/06/08 Python
儿科护士实习自我鉴定
2013/10/17 职场文书
关于青春的演讲稿
2014/05/05 职场文书
安全施工标语
2014/06/07 职场文书
群众路线教育实践活动民主生活会个人检查对照思想汇报
2014/10/04 职场文书
Python实战之OpenCV实现猫脸检测
2021/06/26 Python
详细介绍Next.js脚手架完整搭建封装
2022/04/26 Javascript
MySQL批量更新不同表中的数据
2022/05/11 MySQL