public static function arrayExtend($a, $b) { foreach ($b as $k => $v) { if (is_array($v)) { $a[$k] = !isset($a[$k]) ? $v : self::arrayExtend($a[$k], $v); } else { $a[$k] = $v; } } return $a; }