如何在php中合并一维数组和二维数组

时间:2016-11-28 13:51:25

标签: php arrays

我有两个数组1是two dimensional,第二个是one dimensional,想要合并为二维数组。

例如:

# array1
Array
(
    [0] => Array
        (
            [id] => 598          
        )

    [1] => Array
        (
            [id] => 599        
        )
)
# array2
Array
(       
    [id] => 66    
)

#resultant array
Array
(
    [0] => Array
        (
            [id] => 598
        )
    [1] => Array
        (
            [id] => 599
        )
    [2] => Array
        (
            [id] => 66         
        )
)

在上面的示例中,array1array2是两个输入数组,希望结果为resultant array

我已经尝试了array_merge php函数,但它无效。

怎么做?

2 个答案:

答案 0 :(得分:1)

如果您只想添加一个元素,它将起作用:

$array1[] = $array2;

如果你想创建一个新数组,它应该可以工作:

<?php
$array1 = [
    0 => ['id' => 598],
    1 => ['id' => 599],
];    
$result_array = $array1;    
$array2 = [
    'id' => 66,
];

$result_array[] = $array2;    
print_r($result_array);    
?>

在这种情况下,只需在$array1$array2添加新元素。

如果$array2中有更多项目,您可以执行以下操作:

$result_array = $array1; 
foreach ($array2 as $key => $value) {
    $result_array[] = [$key => $value];
}
print_r($result_array);

答案 1 :(得分:0)

您可以从array_value获取值,然后将id键分配给您的值,然后merge数组。

$array1 = array(
    array('id' => "2"),
    array('id' => "3"),
);

$array2 = array(
    'id' => "1"
);

$array2['id'] = array_values($array2);

$data = array_merge($array2,$array1);