c_array_div()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 4
CRAP Score 1

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 6
dl 0
loc 9
ccs 4
cts 4
cp 1
rs 10
c 1
b 0
f 0
cc 1
nc 1
nop 2
crap 1
1
<?php
2
/**
3
 * Date: 25.06.18
4
 * Time: 12:07
5
 */
6
7
if (!\defined('HEARTBEAT_0')) {
8
    define('HEARTBEAT_0', "-\e[1D");
9
}
10
if (!\defined('HEARTBEAT_1')) {
11
    define('HEARTBEAT_1', "\e[0;34m\\\e[1D\e[0;0m");
12
}
13
if (!\defined('HEARTBEAT_2')) {
14
    define('HEARTBEAT_2', "|\e[1D");
15
}
16
if (!\defined('HEARTBEAT_3')) {
17
    define('HEARTBEAT_3', "\e[0;33m/\e[1D\e[0;0m");
18
}
19
20
21
if (!function_exists('c_avg')) {
22
    /**
23
     * @param float $first
24
     * @param float $second
25
     * @return float
26
     */
27
    function c_avg(float $first, float $second): float
28
    {
29
        return
30 5
            ($first + $second) / 2;
31
    }
32
}
33
34
if (!function_exists('c_array_aligned_sub')) {
35
    /**
36
     * @param array $first // minuend
37
     * @param array $second // subtrahend
38
     * @return array
39
     */
40
    function c_array_aligned_sub(array $first, array $second): array
41
    {
42 2
        $result = [];
43 2
        foreach ($first as $key => $value) {
44 1
            if (\array_key_exists($key, $second)) {
45 1
                $result[$key] = $first[$key] - $second[$key];
46
            }
47
        }
48 2
        return $result;
49
    }
50
}
51
52
if (!function_exists('c_array_div')) {
53
    /**
54
     * @param array $arr
55
     * @param float $divider
56
     * @return array
57
     */
58
    function c_array_div(array $arr, float $divider): array
59
    {
60
        return
61 5
            \array_map(
62
                function ($v) use ($divider) {
63
                    return
64 5
                        $v / $divider;
65 5
                },
66 5
                $arr
67
            );
68
    }
69
}
70
71
if (!function_exists('heartbeat')) {
72
    /**
73
     * @return string
74
     */
75
    function heartbeat(): string
76
    {
77 12
        static $heartCycle = 0;
78 12
        if ($heartCycle >= 4) {
79 2
            $heartCycle = 0;
80
        }
81 12
        switch (++$heartCycle) {
82 12
            case 1:
83 3
                return HEARTBEAT_0;
84 9
            case 2:
85 3
                return HEARTBEAT_1;
86 6
            case 3:
87 3
                return HEARTBEAT_2;
88
        }
89 3
        return HEARTBEAT_3;
90
    }
91
}
92