2012-10-29 219 views
0
$stack = array(
    'name'   => 'some data', 
    'caption'  => 'some data', 
    'published'  => 'some data', 
    'updated_at'  => 'some data', 
    'updated_by'  => 'some data' 
); 

$data = array('album_id' => 'someID'); 

如何将数据数组插入到堆栈数组中?将多维数组插入到另一个多维数组中

更新:我试过array_unshift,但它插入$ multi数组中的第二维中的数据数组,但我希望它与其他人在同一水平。

此外,还有一个问题

,如果我有另一个数组一样的数据,我想它插入到第三的位置会怎么做呢?

+0

这是一维数组,而不是多维数组。它们也是哈希,它们不包含数字索引的键,而是命名的键。所以,你不能将它插入到指定的位置,因为它们确实没有位置。你可以使用array_slice。 array_merge是你如何将它们组合成一个单一的数组。您在array_merge中指定的第一个数组是基数,并且之后传递给array_merge的所有其他数组都将被添加到结尾。您需要将array_merge的结果分配给一个新变量。在php.net上查找更多信息。 – davesters81

回答

3

尝试

$stack = $stack + $data; 

或者

$stack =array_merge($stack, $data); 

如果你想添加$data到第三位置$stack

$chunks = array_chunk($stack, 2, true); 
$stack = array_shift($chunks); 
$stack += $data; 
foreach ($chunks as $chunk) { $stack += $chunk; } 
+0

由于某种原因给了我6。值6,我试着array_unshift而不是6。array_merge只显示数组。 –