$v1) { if(!array_key_exists($k1, $two)) { $diff[$k1] = $v1; } else { $pd = recursiveDiffAssoc($one[$k1], $two[$k1]); if($pd != null) { $diff[$k1] = $pd; } } } } else if(!is_array($one) || !is_array($two)) { if($one != $two) { return $one; } else { return null; } } return $diff; }