PHP array_splice多维

时间:2014-01-03 13:44:33

标签: php arrays multidimensional-array

我不认为这是重复的,但也许我只是没有使用好的关键字。我需要采用2D数组并添加另一个2D数组,以便

$arr  = array(array(1,2), array(3,4), array(7,8));
$arr2 = array(array(5,6));
array_splice($arr, ?, ?, $arr2);

会让我回来

[0] => 1,2
[1] => 3,4
[2] => 5,6
[3] => 7,8

我对如何做到这一点感到茫然,因为文档不清楚如何不删除任何数组但仍然添加它。

感谢。

3 个答案:

答案 0 :(得分:1)

如果你真的想使用array_splice(),那么你想在位置2插入并使用0的偏移(既不是正数也不是负数),所以你不要删除任何现有的值但是把它们移到适当的位置:

$arr  = array(array(1,2), array(3,4), array(7,8));
$arr2 = array(array(5,6));
array_splice($arr, 2, 0, $arr2);

答案 1 :(得分:0)

使用array_merge

<?php

$arr  = array(array(1,2), array(3,4), array(7,8));
$arr2 = array(array(5,6));
$result = array_merge($arr, $arr2);

print_r($result);

http://codepad.org/B0ckNCpM

<强>输出:

Array
(
    [0] => Array
        (
            [0] => 1
            [1] => 2
        )

    [1] => Array
        (
            [0] => 3
            [1] => 4
        )

    [2] => Array
        (
            [0] => 7
            [1] => 8
        )

    [3] => Array
        (
            [0] => 5
            [1] => 6
        )
)

答案 2 :(得分:0)

数组合并将为您执行此操作。

LIVE TEST:https://eval.in/85459

$arr  = array(array(1,2), array(3,4), array(7,8));
$arr2 = array(array(5,6));
$arr = array_merge($arr,  $arr2);
print_r($arr);

输出:

   Array
(
    [0] => Array
        (
            [0] => 1
            [1] => 2
        )

    [1] => Array
        (
            [0] => 3
            [1] => 4
        )

    [2] => Array
        (
            [0] => 7
            [1] => 8
        )

    [3] => Array
        (
            [0] => 5
            [1] => 6
        )

)

array_splice()用于从数组中删除元素并将其替换为新元素。