public static function merge($arrays)
    {
        $merged = [];

        foreach ($arrays as $array)
        {
            $merged = array_merge($merged, static::flatten($array));
        }

        return static::expand($merged);
    }
public static function merge($arrays)
    {
        $merged = [];

        foreach ($arrays as $array)
        {
            $merged = array_merge($merged, static::flatten($array));
        }

        return static::expand($merged);
    }
public static function merge ( $ arrays ) { $ merged = [ ] ; foreach ( $ arrays as $ array ) { $ merged = array_merge ( $ merged , static :: flatten ( $ array ) ) ; } return static :: expand ( $ merged ) ; }
Merge several arrays, preserving dot notation.

@param array[] $arrays
@return array
Merge several arrays preserving dot notation .