PHP IP地址和十进制数字互转
IPV4 可以看做4个256进制的数字, 可以按常规的进制转换换算成十进制.
如 192.168.1.1 换算成10进制:
192*256*256*256 + 168*256*256+1*256+1
其实计算机更擅长移位和与或运算. 可以改进算法如下.
IP 转长整型
public ipToInt($sIP)
{
$aIP = explode('.',$sIP);
$iIP = ($aIP[0] << 24) | ($aIP[1] << 16) | ($aIP[2] << 8) | $aIP[3]
if($iIP < 0) $iIP += 4294967296;
return $iIP;
}
整型转 IP:
function intToIP($iIP)
{
$xor = array(0x000000ff,0x0000ff00,0x00ff0000,0xff000000);
for($i=0; $i<4; $i++)
{
${s.$i} = ($iIP & $xor[$i]) >> $i*8;
if (${s.$i} < 0) ${s.$i} += 256;
}
return $s3.'.'.$s2.'.'.$s1.'.'.$s0;
}
相关文档:
本文转载自:http://www.binzhou123.com/article/html/6038.html
滨州站长网最新消息:
Apache是一种功能强大得Web服务器。如今,Internet上无数运行在Linux上得Apache服务器正为Web世界得日益繁荣提供着有力得支撑。本文将向读者介绍如何在UbuntuLinux系统迅速搭建ApacheWeb服务器。
尽管Ubuntu是一种新兴得 ......
1、提交表单Javascript验证
<form action="" method="post" name="myform" onsubmit="return CheckPost();">
SCRIPT language=javascript>
function CheckPost()
{
if (myform.user.value=="")
{
alert("请填写用户");
myform.user.focus();
return f ......
以前分析xdebug用的是(wincachegrind)http://sourceforge.net/projects/wincachegrind/
现在直接安装webgrind来调试速度会更好
http://xdebug.org/
下载地址:
Source:
xdebug 2.0.3
Windows modules:
PHP 5.1.2-5.1.7
PHP 5.2.1-5.2.6
PHP 5.3.0dev
windows
编辑php.ini,先注释掉zend:
[Zend]
;zend ......
每个PHP程序员都知道PHP有强大的正则表达式功能,为了以后的工作方便,我从网上整理了关于正则表达式的资料,方便以后工作时的进行资料查阅。
正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。
......