Foreach数组合并

I am trying to merge multiple array with a foreach loop. The wp_get_nav_menu_items() function returns an array object by filling in the menu name. With my loop I want to add all the array items of the 3 menus together.

$menus = array( 'menu 1', 'menu 2', 'menu 3' );
foreach( $menus as $key => $menu ) {
    $menu_object    = wp_get_nav_menu_items( esc_attr( $menu ) );
    $menu_objects[]     = $menu_object;
}   

But with my current code I get the following result:

Array
(
    [0] => Array
        (
            [0] => WP_Post Object
                (
                    [ID] => 397
                )
        )
    [1] => Array
        (
            [0] => WP_Post Object
                (
                    [ID] => 112
                ) 
        )
) 

And I need this:

Array
(
     [0] => WP_Post Object
        (
           [ID] => 397
        )
     [1] => WP_Post Object
        (
           [ID] => 112
        )
     [2] => WP_Post Object
        (
           [ID] => 136
        )
)

So I have tried to use array_merge in the loop but this doesn't work.

$menus = array( 'menu 1', 'menu 2', 'menu 3' );
foreach( $menus as $key => $menu ) {
    $menu_object    = wp_get_nav_menu_items( esc_attr( $menu ) );
    $menu_objects   = array_merge( $menu_objects, $menu_object );
}   

I only needed to specify $menu_objects as an array:

$menus = array( 'menu 1', 'menu 2', 'menu 3' );
$menu_objects = array();
foreach( $menus as $key => $menu ) {
    $menu_object    = wp_get_nav_menu_items( esc_attr( $menu ) );
    $menu_objects   = array_merge( $menu_objects, $menu_object );
} 

Why not just modify this line to get the object:

$menu_object = wp_get_nav_menu_items( esc_attr( $menu ) );

Try something like:

$menu_object = wp_get_nav_menu_items( esc_attr( $menu ) )[0];