PHP 在特定位置插入数组到关联数组

PHP Insert array to associative array at specific position

我想在特定位置将一个数组插入到另一个关联数组,但对我来说 array_splice 不起作用。 我想这样做:

    $example = [
       'first' => 'element',
       'second' => 'element'];
    $example[] = [
       'third' => 'element',
       'fourth' => 'element'];

现在我们有一个关联数组,里面有两个另外的数组。 我想在其中插入另一个数组,例如在它之间。重要的是,我想插入到特定索引。

     $insert[] = [
        'insert_first' => 'element',
        'insert_second' => 'element'];
     //I made before it: 
     $index = 1;
     array_splice($example, $index, 0, $insert); //but it doesn't work :(

我想要以下结果:

array(
 [0] => array(
    'first' => 'element',
    'second' => 'element'
 )
 [1] => array(
    'insert_first' => 'element',
    'insert_second' => 'element'
 )
 [2] => array(
    'third' => 'element',
    'fourth' => 'element'
 )
)

有人可以帮助我吗?我该怎么做?

谢谢,来自匈牙利的 Balázs。

$example[] = [
   'first' => 'element',
   'second' => 'element'];
$example[] = [
   'third' => 'element',
   'fourth' => 'element'];
$insert[] = [
    'insert_first' => 'element',
    'insert_second' => 'element'];

$index = 1;
array_splice($example, $index, 0, $insert);
print_r($example);

给你:

Array ( 
 [0] => Array ( [first] => element [second] => element ) 
 [1] => Array ( [insert_first] => element [insert_second] => element ) 
 [2] => Array ( [third] => element [fourth] => element ) )

您的原始数组不正确。正确一个:

// Here you have array with one element which is array:
$example = [
   [
       'first' => 'element',
       'second' => 'element'
   ]
];
// Add another element which is array too
$example[] = [
   'third' => 'element',
   'fourth' => 'element'];
// define insert array
$insert[] = [
    'insert_first' => 'element',
    'insert_second' => 'element'
];
$index = 1;
array_splice($example, $index, 0, $insert);