| Conditions | 7 | 
| Paths | 6 | 
| Total Lines | 30 | 
| Code Lines | 13 | 
| Lines | 0 | 
| Ratio | 0 % | 
| Changes | 0 | ||
| 1 | <?php  | 
            ||
| 13 | public static function recursiveArrayDiff(array $array1, array $array2): array  | 
            ||
| 14 |     { | 
            ||
| 15 | $return = [];  | 
            ||
| 16 | |||
| 17 | foreach ($array1 as $key => $value)  | 
            ||
| 18 |         { | 
            ||
| 19 | if (array_key_exists($key, $array2))  | 
            ||
| 20 |             { | 
            ||
| 21 | if (is_array($value) && is_array($array2[$key]))  | 
            ||
| 22 |                 { | 
            ||
| 23 | $recursiveDiff = static::recursiveArrayDiff($value, $array2[$key]);  | 
            ||
| 24 | |||
| 25 | if (count($recursiveDiff))  | 
            ||
| 26 |                     { | 
            ||
| 27 | $return[$key] = $recursiveDiff;  | 
            ||
| 28 | }  | 
            ||
| 29 | }  | 
            ||
| 30 | elseif ($value !== $array2[$key])  | 
            ||
| 31 |                 { | 
            ||
| 32 | $return[$key] = $value;  | 
            ||
| 33 | }  | 
            ||
| 34 | }  | 
            ||
| 35 | else  | 
            ||
| 36 |             { | 
            ||
| 37 | $return[$key] = $value;  | 
            ||
| 38 | }  | 
            ||
| 39 | }  | 
            ||
| 40 | |||
| 41 | return $return;  | 
            ||
| 42 | }  | 
            ||
| 43 | }  | 
            ||
| 44 |