0byt3m1n1
Path:
/
home
/
mgatv524
/
www
/
novabrasil
/
vendor
/
respect
/
validation
/
library
/
Rules
/
[
Home
]
File: Pesel.php
<?php /* * This file is part of Respect/Validation. * * (c) Alexandre Gomes Gaigalas <alexandre@gaigalas.net> * * For the full copyright and license information, please view the "LICENSE.md" * file that was distributed with this source code. */ namespace Respect\Validation\Rules; class Pesel extends AbstractRule { public function validate($input) { if (!preg_match('/^\d{11}$/', $input)) { return false; } $weights = [1, 3, 7, 9, 1, 3, 7, 9, 1, 3]; $targetControlNumber = $input[10]; $calculateControlNumber = 0; for ($i = 0; $i < 10; $i++) { $calculateControlNumber += $input[$i] * $weights[$i]; } $calculateControlNumber = (10 - $calculateControlNumber % 10) % 10; return $targetControlNumber == $calculateControlNumber; } }