子网掩码转换函数
同事写的一种转换子网掩码类型的方法,先记着。
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;
}