Validar máscara e IP inicial da rede com PHP

Publicado por Anderson J. de Souza em 22/09/2008

[ Hits: 11.180 ]

Blog: http://anderjs.blogspot.com/

 


Validar máscara e IP inicial da rede com PHP



Três funções em PHP simples que verificam se o IP passado é um IP de início da rede ou não. Particularmente eu aconselho criar uma classe para trabalhar com isto!

function fill0($x){
   return str_pad($x,8,'0',STR_PAD_LEFT);
}
function ip2bin($x){
   preg_match_all("/[0-9]{1,3}/","$x",$a);
   $b=array_map("decbin",$a[0]);
   $c=array_map("fill0",$b);
   return ("$c[0]$c[1]$c[2]$c[3]");
}
function checkNet($ip,$mask){
   $b=ip2bin($mask);
   if (!preg_match("/^1*0*$/",$b)) return "Máscara inválida";
   $a=ip2bin($ip);
   if (($a | $b) !== $b) return "Ip de rede inválido";
}

// Executando //
$x=checkNet($a="128.0.0.0",$b="128.0.1.0");
echo ($x?$x:"Rede Válida")."\n";

A função checkNet retorna string de erro ou nada para tudo válido.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Monitorando portas de hosts com PHP e MySQL

Usando um script PHP como inclusão do lado servidor

js-bwm: monitorando seu link de internet em tempo real

Envio de SMS pelo PHP

Exportando lista de MSN

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts