php实现判断某个给定的ip地址是否在指定ip范围内

来源:互联网 发布:为啥淘宝无法付款 编辑:程序博客网 时间:2024/05/21 18:50

<?php
//判断某个ip是否在给定的ip范围内
$ipRanges = array(   array( '192.168.1.1' , '192.168.30.30'),   array( '10.1.1.1' , '10.1.10.255' ) ,   array( '100.100.1.1' , '10.100.10.50' ) ); //给定的ip字段
$localIp=$_SERVER["REMOTE_ADDR"];//获取当前ip
$is_or_no = is_ip($localIp,$ipRanges);
if($is_or_no)
 {   
  die('ok');
  }else {  
   die('error');
   }
//对应的方法
function is_ip($localIp,$ipRanges)
 {    
 $localIp = ip2long($localIp);  
   foreach($ipRanges as $val)
 { 
 $ipmin=sprintf("%u",ip2long($val[0]));
 $ipmax=sprintf("%u",ip2long($val[1]));

 if($localIp >= $ipmin && $localIp <= $ipmax)
  {   return $val;   } 
 }   
 return false;
 }

 

 

 


?>