Conditions | 9 |
Paths | 15 |
Total Lines | 29 |
Code Lines | 16 |
Lines | 0 |
Ratio | 0 % |
Tests | 17 |
CRAP Score | 9 |
Changes | 1 | ||
Bugs | 0 | Features | 0 |
1 | <?php |
||
19 | 14 | public static function funcSumProduct(...$args) |
|
20 | { |
||
21 | 14 | $arrayList = $args; |
|
22 | |||
23 | 14 | $wrkArray = Functions::flattenArray(array_shift($arrayList)); |
|
24 | 14 | $wrkCellCount = count($wrkArray); |
|
25 | |||
26 | 14 | for ($i = 0; $i < $wrkCellCount; ++$i) { |
|
27 | 14 | if ((!is_numeric($wrkArray[$i])) || (is_string($wrkArray[$i]))) { |
|
28 | 3 | $wrkArray[$i] = 0; |
|
29 | } |
||
30 | } |
||
31 | |||
32 | 14 | foreach ($arrayList as $matrixData) { |
|
33 | 14 | $array2 = Functions::flattenArray($matrixData); |
|
34 | 14 | $count = count($array2); |
|
35 | 14 | if ($wrkCellCount != $count) { |
|
36 | 1 | return Functions::VALUE(); |
|
37 | } |
||
38 | |||
39 | 13 | foreach ($array2 as $i => $val) { |
|
40 | 13 | if ((!is_numeric($val)) || (is_string($val))) { |
|
41 | 3 | $val = 0; |
|
42 | } |
||
43 | 13 | $wrkArray[$i] *= $val; |
|
44 | } |
||
45 | } |
||
46 | |||
47 | 13 | return array_sum($wrkArray); |
|
48 | } |
||
50 |