Arrays::mergeRecursiveUnique()   B
last analyzed

Complexity

Conditions 5
Paths 3

Size

Total Lines 18
Code Lines 8

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 18
c 0
b 0
f 0
rs 8.8571
cc 5
eloc 8
nc 3
nop 2
1
<?php
2
namespace DICIT\Util;
3
4
class Arrays
5
{
6
    public static function mergeRecursiveUnique (array $array1, array $array2)
7
    {
8
        $merged = $array1;
9
10
        foreach ($array2 as $key => $value)
11
        {
12
            if (is_array($value) && isset($merged[$key]) && is_array($merged [$key]))
13
            {
14
                $merged[$key] = self::mergeRecursiveUnique($merged[$key], $value);
15
            }
16
            else
17
            {
18
                $merged[$key] = $value;
19
            }
20
        }
21
22
        return $merged;
23
    }
24
}
25