phpVa voi arata cum sa validati IP-urile folosind expresiile regulate in PHP. Dupa cum stiti adresa IP este alcatuita din patru parti. Fiecare parte este separata prin “.” si este alcatuita din cifre cuprinse intre 0 si 255.



//function to validate ip address format in php

function validateIpAddress($ip_addr)

{

  //first of all the format of the ip address is matched

  if(preg_match("/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/",$ip_addr))

  {

    //now all the intger values are separated

    $parts=explode(".",$ip_addr);

    //now we need to check each part can range from 0-255

    foreach($parts as $ip_parts)

    {

      if(intval($ip_parts)>255 || intval($ip_parts)<0)

      return false; //if number is not within range of 0-255

    }

    return true;

  }

  else

    return false; //if format of ip address doesn't matches

}



Dupa cum vedeti prima data “$ip_addr” este validata folosindu-se expresia regulata.

Expresia regulata contine “\d{1,3}”, ceea ce inseamna ca trebuie ca fiecare parte sa aiba una sau trei cifre pentru ca adresa IP poate fi de forma “222.0.123.12? sau “12.15.123.5?. Dupa ce se valideaza formatul folosindu-se expresia regulata, fiecare parte din ip este separata prin “.” folosind functia din PHP explode().
In final, se verifica daca fiecare parte din IP este in intervalul 0 si 255.

.

Comments are closed.