[PHP] Funkcja walidująca numer PESEL
Ostatnio przyszło mi stworzyć funkcję walidującą numer PESEL. Oczywiście najpierw pogrzebałem w encyklopedii (można ją znaleźć pod adresem www.google.pl ), and viola! Oto kod:
|
1 |
<br/>function sprawdzPESEL($str)<br/>{<br/> if (strlen($str) != 11 || !is_numeric($str)) //sprawdzamy czy podany numer ma 11 znaków<br/> {<br/> return false;<br/> }<br/><br/> $arrSteps = array(1, 3, 7, 9, 1, 3, 7, 9, 1, 3); // tablica z odpowiednimi wagami<br/> $intSum = 0;<br/> for ($i = 0; $i < 10; $i++)<br/> {<br/> $intSum += $arrSteps[$i] * $str[$i]; //mnożymy każdy ze znaków przez wagę i sumujemy wszystko<br/> }<br/> $int = 10 - $intSum % 10; //obliczamy sumę kontrolną<br/> $intControlNr = ($int == 10)?0:$int;<br/> if ($intControlNr == $str[10]) //sprawdzamy czy taka sama suma kontrolna jest w ciągu<br/> {<br/> return true;<br/> }<br/> return false;<br/>} ?> |
