在另一个数组中的任何位置插入新项的数组

时间:2012-07-18 04:07:34

标签: php arrays

如何将新项目添加到数组?例如,在数组的中间?我们应该使用array splice还是array merge
 你能解释一下这两种功能之间的区别吗?

说我有

$a1=array("a"=>"Horse","b"=>"Dog","c"=>"Cow",);
$a2=array("d"=>"Cat");

现在我需要在2位添加$ a2。

我应该使用哪一个?

2 个答案:

答案 0 :(得分:0)

您可以使用array_push在任何位置添加数组。 ..array_splice也可以使用。 。
例如:array_splice

答案 1 :(得分:0)

您可以使用array_splice,但不会保留您的密钥。

$a1 = array("a"=>"Horse", "b"=>"Dog", "c"=>"Cow");
$a2 = array("d"=>"Cat");

array_splice($a1, 2, 0, $a2);

// $a1 is now: array("a"=>"Horse", "b"=>"Dog", 0=>"Cat", "c"=>"Cow");

如果您希望Cat拥有d的密钥,则可以混合使用array_slicearray union operator+):

$a1 = array_slice($a1, 0, 2) + $a2 + array_slice($a1, 2);

// $a1 is now: array("a"=>"Horse", "b"=>"Dog", "d"=>"Cat", "c"=>"Cow");