Просмотр исходного кода

Dodano do klasy V funkcje sprawdzajace NIP i REGON

Mariusz Muszyński 8 лет назад
Родитель
Сommit
1a09d8362c
1 измененных файлов с 17 добавлено и 0 удалено
  1. 17 0
      SE/se-lib/V.php

+ 17 - 0
SE/se-lib/V.php

@@ -601,4 +601,21 @@ EOF';
 		return sprintf("%0.5f", abs($aTime - $bTime) / 100000);
 	}
 
+	public static function isNip($nip) {
+		if (!(is_numeric($nip) && preg_match('/^[[:digit:]]{10}$/', $nip))) return false;
+		$waga = [6, 5, 7, 2, 3, 4, 5, 6, 7];
+		$c = 0; 
+		for ($i = 0; $i < 9; $i++) $c += $nip[$i] * $waga[$i];
+		$c = ($c % 11) % 10;
+		return ($nip[9] == $c);
+	}
+
+	public static function isRegon($regon) {
+		if (!(is_numeric($regon) && preg_match('/^[[:digit:]]{9}$/', $regon))) return false;
+		$waga = [8, 9, 2, 3, 4, 5, 6, 7];
+		$c = 0;
+		for ($i = 0; $i < 8; $i++) $c += $regon[$i] * $waga[$i];
+		$c = ($c % 11) % 10;
+		return ($regon[8] == $c);
+	}
 }