IP地址转换以及简单查询实现

将IP转换成数字格式或者将数字格式IP地址转换为IP地址格式用到php内置的两个函数,分别是ip2long和long2ip函数。对IP地址进行转换可以更方便地进行判断范围、所在位置等。

ip2long将一个IPV4的字符串互联网协议转换成数字格式,转换为一个负数的形式。

int ip2long ( string $ip_address )返回IP地址转换后的数字 或 FALSE 如果 ip_address 是无效的。

long2ip — 将长整型转化为字符串形式带点的互联网标准格式地址(IPV4)。
string long2ip ( string $proper_address )返回字符串的互联网 IP 地址。


下面判断获取的IP地址是否在某范围内(192.168.1.100~192.168.200);

<?php
$ip = $_SERVER['REMOTE_ADDR'];
$ip_adress = ip2long($ip);
//$ip_adress = ip2long("192.168.1.201");
$min = ip2long("192.168.1.100");
$max = ip2long("192.168.1.200");
if($ip_adress >= $min && $ip_adress <= $max){
	echo 1;
}else{
	echo 0;
}
?>
还可以用long2ip转换成互联网格式IP地址。

评论/留言