Conditions | 2 |
Paths | 2 |
Total Lines | 16 |
Code Lines | 10 |
Lines | 0 |
Ratio | 0 % |
Tests | 8 |
CRAP Score | 2 |
Changes | 0 |
1 | <?php |
||
17 | 1 | public function isValid($number) |
|
18 | { |
||
19 | 1 | settype($number, 'string'); |
|
20 | $sumTable = [ |
||
21 | 1 | [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], |
|
22 | [0, 2, 4, 6, 8, 1, 3, 5, 7, 9] |
||
23 | ]; |
||
24 | 1 | $sum = 0; |
|
25 | 1 | $flip = 0; |
|
26 | |||
27 | 1 | for ($i = strlen($number) - 1; $i >= 0; $i--) { |
|
28 | 1 | $sum += $sumTable[$flip++ % 2][$number[$i]]; |
|
29 | } |
||
30 | |||
31 | 1 | return $sum % 10 === 0; |
|
32 | } |
||
33 | } |
||
34 |