|
|
4.15.1 NIP
Ostatnia modyfikacja: 2005-01-12 11:15:27
<?php # zwraca 1 gdy NIP jest poprawny
function check_nip($nip) { // tworzenie tablicy wag $steps = array(6, 5, 7, 2, 3, 4, 5, 6, 7);
// wycinanie zbędnych znaków z numeru $nip = str_replace('-', '', $nip); $nip = str_replace(' ', '', $nip); if (strlen($nip) != 10) return 0;
// tworzenie sumy iloczynów for ($x = 0; $x < 9; $x++) $sum_nb += $steps[$x] * $nip[$x];
$sum_m = $sum_nb % 11;
if ($sum_m == 10) $sum_m = 0; //* if ($sum_m == $nip[9]) return 1;
return 0; }
// sposób wykorzystania if (check_nip('768-000-24-66')) echo 'NIP poprawny'; ?>
* Poprawka z dnia 03.09.2004, błąd zauważył Anakin
Szczegółowe informacje na temat algorytmu m.in. na stronie: http://wipos.p.lodz.pl/zylla/ut/nip-rego.html
Inny sposób sprawdzenia można zobaczyć na stronie:
http://anakin.us/faq/4.15.php
Powrót do indeksu
|