PluginProbe ʕ •ᴥ•ʔ
Kubio AI Page Builder / 2.8.6
Kubio AI Page Builder v2.8.6
2.9.0 2.8.6 2.8.5 2.8.4 2.8.3 2.8.2 2.8.1 trunk 1.0.0 1.0.1 1.1.0 1.2.0 1.2.1 1.2.2 1.2.3 1.3.0 1.3.1 1.3.2 1.4.0 1.4.1 1.4.2 1.4.3 1.5.0 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.7.3 1.8.0 1.8.1 1.8.2 1.9.0 2.0.0 2.1.1 2.1.2 2.1.3 2.2.0 2.2.3 2.2.4 2.2.5 2.3.0 2.3.1 2.3.3 2.3.4 2.4.0 2.4.1 2.4.2 2.4.3 2.4.5 2.5.0 2.5.1 2.5.2 2.5.3 2.6.0 2.6.1 2.6.2 2.6.3 2.6.5 2.6.6 2.6.7 2.7.0 2.7.1 2.7.2 2.7.3 2.8.0
kubio / vendor / fzaninotto / faker / src / Faker / Calculator / Inn.php
kubio / vendor / fzaninotto / faker / src / Faker / Calculator Last commit date
Ean.php 1 year ago Iban.php 1 year ago Inn.php 1 year ago Luhn.php 1 year ago TCNo.php 1 year ago
Inn.php
35 lines
1 <?php
2 namespace Faker\Calculator;
3
4 class Inn
5 {
6 /**
7 * Generates INN Checksum
8 *
9 * https://ru.wikipedia.org/wiki/%D0%98%D0%B4%D0%B5%D0%BD%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B9_%D0%BD%D0%BE%D0%BC%D0%B5%D1%80_%D0%BD%D0%B0%D0%BB%D0%BE%D0%B3%D0%BE%D0%BF%D0%BB%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%89%D0%B8%D0%BA%D0%B0
10 *
11 * @param string $inn
12 * @return string Checksum (one digit)
13 */
14 public static function checksum($inn)
15 {
16 $multipliers = array(1 => 2, 2 => 4, 3 => 10, 4 => 3, 5 => 5, 6 => 9, 7 => 4, 8 => 6, 9 => 8);
17 $sum = 0;
18 for ($i = 1; $i <= 9; $i++) {
19 $sum += intval(substr($inn, $i-1, 1)) * $multipliers[$i];
20 }
21 return strval(($sum % 11) % 10);
22 }
23
24 /**
25 * Checks whether an INN has a valid checksum
26 *
27 * @param string $inn
28 * @return boolean
29 */
30 public static function isValid($inn)
31 {
32 return self::checksum(substr($inn, 0, -1)) === substr($inn, -1, 1);
33 }
34 }
35