php进行ip地址掩码运算处理的方法

本文实例讲述了php进行ip地址掩码运算处理的方法。分享给大家供大家参考,具体如下:

ip解析:

function ip_parse($ip_str) {  $mark_len = 32;

 if (strpos($ip_str, \

  list($ip_str, $mark_len) = explode(\  }

 $ip = ip2long($ip_str);

 $mark = 0xFFFFFFFF << (32 - $mark_len) & 0xFFFFFFFF;  $ip_start = $ip & $mark;

 $ip_end = $ip | (~$mark) & 0xFFFFFFFF;  return array($ip, $mark, $ip_start, $ip_end); }

//演示:

list($ip, $mark, $ip_start, $ip_end) = ip_parse(\ echo \地址 : \ echo \子网掩码: \ echo \段开始: \ echo \段结束: \ 结果:

IP地址 : 192.168.1.12 子网掩码: 255.255.255.0 IP段开始: 192.168.1.0 IP段结束: 192.168.1.255 ip是否在ip分段中:

function ip_in($ip, $ip_str) {  $mark_len = 32;

 if (strpos($ip_str, \

  list($ip_str, $mark_len) = explode(\  }

 $right_len = 32 - $mark_len;

 return ip2long($ip) >> $right_len == ip2long($ip_str) >> $right_len; }

//演示:

var_dump(ip_in(\

希望本文所述对大家PHP程序设计有所帮助。

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4