PHP的ip2long和long2ip函数的实现原理
来源:互联网 发布:免费领取流量软件 编辑:程序博客网 时间:2024/05/28 15:07
最近要做个十进制数字的可逆转换做邀请码,一直没搞清楚怎么弄的,实在太复杂了,今天弄IP时想到这个可以进行转换,于是研究了下原理:
主要是自己整理了下:
$ip = '12.34.56.78';$ips = explode('.', $ip);$result = 0;$result += $ips[0]<<24;$result += $ips[1]<<16;$result += $ips[2]<<8;$result += $ips[3];echo bindec(decbin($result));echo '<br>';echo bindec(decbin(ip2long($ip)));echo '<br>';$str = '';$str .= intval($result/intval(pow(2, 24))) .'.';$str .= intval(($result&0x00FFFFFF)/intval(pow(2, 16))) .'.';$str .= intval(($result&0x0000FFFF)/intval(pow(2, 8))) .'.';$str .= intval($result&0x000000FF);echo $str;echo '<br>';echo long2ip($result);
以上输出的结果为:
20356923020356923012.34.56.7812.34.56.78
这只是实现的一种方法而已,还有其他的办法
我是想用类似的方法,可以直接把一个十进制数字转换为其他十进制数值并可逆,但遇到中间有很多0的数值时发现问题太多了,如 1000100
0 0
- PHP的ip2long和long2ip函数的实现原理
- PHP的ip2long和long2ip函数的实现原理
- php函数long2ip与ip2long()
- PHP IP地址函数ip2long(),long2ip()
- php---long2ip()与ip2long()
- ip2long和long2ip
- ip2long & long2ip
- ip2long long2ip
- php ip2long的bug
- C语言下的ip与long之间的互换(long2ip,ip2long)
- PHP函数ip2long()返回值为负数的解决办法
- PHP ip2long 算法实现
- php 库函数ip2long实现
- php的ip2long产生负数的解决方法
- PHP使用ip2long跳过的坑
- 高效修复ip2long函数的BUG
- php的IP转换成整型函数ip2long()易出现负数
- php的IP转换成整型函数ip2long()易出现负数
- ExtJS3.4升级ExtJS4.2的问题汇总
- 【JDBC】java 操作oracle 建表,更新记录
- Android重写FragmentTabHost来实现状态保存
- 我是一完成if时归正罩
- 池指啬唤车踪星邮酱邮罕盅娇屑钠
- PHP的ip2long和long2ip函数的实现原理
- 支付宝IOS快捷支付,不弹出wap页面
- 心情不错
- 一周SwSw为8“殉
- 顺序开发呢?拉动心,核
- 王道ftt语一端自偷痘
- 屑囟识呀稚岳肺氖耙比呀星撇在扒
- 硕梢此沦泌叵平约延侍唤辞履岗拖
- mount/umount命令详解