子网掩码转换函数

笔记.......

同事写的一种转换子网掩码类型的方法,先记着。

PHP中,子网掩码转换函数。如:192.168.1.10/24 中的“/24” 转换成子网掩码:255.255.255.0


function mask_change($mask){
$net_mask = "";
for($i = 0; $i < 32; $i++){
if($i < $mask)
$net_mask.="1";
else
$net_mask.="0";
}
$src_ip_mask = "";
$ten_hex_num = bindec($net_mask);
for($i=3; $i>=0;$i--){
$src_ip_mask.= ($ten_hex_num>>8*$i)&0xff;
if($i!=0)
$src_ip_mask.=".";
}
return $src_ip_mask;
}

 

由255.255.255.0 转换成“/24”这种格式的函数

 

function return_mask($tmp_net_mask) {
$turn = explode(".",$tmp_net_mask);
$shi_mask="";
for ($i=0;$i<4;$i++){
$shi_mask .= decbin($turn[$i]);
}

$mask = substr_count($shi_mask,"1");
return $mask;
}

 

posted @ 2013-01-14 18:27  wanhl  阅读(1158)  评论(0编辑  收藏  举报