Chris@0: $value) { Chris@0: if (is_array($value)) { Chris@0: if (!array_key_exists($key, $array2) || !is_array($array2[$key])) { Chris@0: $difference[$key] = $value; Chris@0: } Chris@0: else { Chris@0: $new_diff = static::diffAssocRecursive($value, $array2[$key]); Chris@0: if (!empty($new_diff)) { Chris@0: $difference[$key] = $new_diff; Chris@0: } Chris@0: } Chris@0: } Chris@0: elseif (!array_key_exists($key, $array2) || $array2[$key] !== $value) { Chris@0: $difference[$key] = $value; Chris@0: } Chris@0: } Chris@0: Chris@0: return $difference; Chris@0: } Chris@0: Chris@0: }