ArrayUtil   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
eloc 6
dl 0
loc 22
ccs 6
cts 6
cp 1
rs 10
c 0
b 0
f 0
wmc 2

1 Method

Rating   Name   Duplication   Size   Complexity  
A searchAndReplace() 0 11 2
1
<?php
2
3
namespace ddlzz\AmoAPI\Utils;
4
5
/**
6
 * Class ArrayUtil.
7
 *
8
 * @author ddlzz
9
 */
10
class ArrayUtil
11
{
12
    /**
13
     * Replaces a value in a multidimensional array with another value.
14
     *
15
     * @param int|string $search
16
     * @param int|string $replace
17
     * @param array      $haystack
18
     *
19
     * @return array
20
     */
21
    public static function searchAndReplace($search, $replace, $haystack)
22
    {
23 2
        $callback = function (&$value, $key, array $params) {
24 2
            if ($params['search'] === $value) {
25 2
                $value = $params['replace'];
26
            }
27 2
        };
28
29 2
        array_walk_recursive($haystack, $callback, ['search' => $search, 'replace' => $replace]);
30
31 2
        return $haystack;
32
    }
33
}
34