Validar máscara e IP inicial da rede com PHP

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

[ Hits: 8.753 ]

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

Usando um script PHP como inclusão do lado servidor

Erro 404 - Servidor HTTPD (Apache-2) no Fedora 23 [Resolvido]

Monitorando portas de hosts com PHP e MySQL

php-meter: Medidor que mostra o consumo de banda no link de internet

jQuery + PHP = Monitor de status

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts