在PHP中添加两个数组

在PHP中添加两个数组,php,arrays,Php,Arrays,我有两个数组,我想将其添加到一个组合数组中 $first = Array ( [0] => Array ( [countrySelected] => 3 [stateSelected] => 176 [citySelected] => 551 ) ) $second = Array ( [0] => Array (

我有两个数组,我想将其添加到一个组合数组中

$first = Array
(
    [0] => Array
        (
            [countrySelected] => 3
            [stateSelected] => 176
            [citySelected] => 551
        )

)
$second = Array
(
    [0] => Array
        (
            [countrySelected] => 3
            [stateSelected] => N/A
            [citySelected] => N/A
        )

)
现在我想把它们组合起来:

Array
(
    [0] => Array
        (
            [countrySelected] => 3
            [stateSelected] => 176
            [citySelected] => 551
        )

    [1] => Array
        (
            [countrySelected] => 3
            [stateSelected] => N/A
            [citySelected] => N/A
        )
)

我尝试使用array_merge,但它将它们合并为一个元素,但我需要两个元素,如上面的[0]、[1]。

您可以对两个数组使用两个
foreach
循环,并将它们添加到第三个数组中

foreach($arr1 as $item){
  $arr3[]=$item;
}
foreach($arr2 as $item){
  $arr3[]=$item;
}

您可以对两个数组使用两个
foreach
循环,并将它们添加到第三个数组中

foreach($arr1 as $item){
  $arr3[]=$item;
}
foreach($arr2 as $item){
  $arr3[]=$item;
}

您是否使用了数组推送功能? 可能是这样的:

array_push($Array2,$Array1[0]);
第一个参数是目标,第二个是要插入的元素


array\u push()将其插入数组中的最后一个字段。

是否使用了array\u push? 可能是这样的:

array_push($Array2,$Array1[0]);
第一个参数是目标,第二个是要插入的元素

array\u push()将其插入数组中的最后一个字段。

我的方法-

案例1- 如果你不知道会有多少把钥匙

$mergedArray = [];
foreach($array1 as $key=>$value)
{         $mergedArray[] = $value;    } //similarly for array 2
情况2-如果关联数组中只有一个键

$mergedArray = [];
$mergedArray[] = $array1[0];
$mergedArray[] = $array2[0];
我的方法-

案例1- 如果你不知道会有多少把钥匙

$mergedArray = [];
foreach($array1 as $key=>$value)
{         $mergedArray[] = $value;    } //similarly for array 2
情况2-如果关联数组中只有一个键

$mergedArray = [];
$mergedArray[] = $array1[0];
$mergedArray[] = $array2[0];

在这里,只需使用如下所示的
array\u map

<?php
$array1 = array(
    array(
            "countrySelected" => 3,
            "stateSelected" => 176,
            "citySelected" => 551
        )

);
$array2 = array(
    array(
            "countrySelected" => 3,
            "stateSelected" => "N/A",
            "citySelected" => "N/A",
        )

);

array_map(function($arr) use(&$array1){
    $array1[] =  $arr;
}, $array2);

print_r($array1);

在这里,只需使用
array\u map
如下所示:

<?php
$array1 = array(
    array(
            "countrySelected" => 3,
            "stateSelected" => 176,
            "citySelected" => 551
        )

);
$array2 = array(
    array(
            "countrySelected" => 3,
            "stateSelected" => "N/A",
            "citySelected" => "N/A",
        )

);

array_map(function($arr) use(&$array1){
    $array1[] =  $arr;
}, $array2);

print_r($array1);

您可以使用array\u merge\u recursive:

$arr1 = array(
        array(
                "countrySelected" => 3,
                "stateSelected" => 176,
                "citySelected" => 551
        )
);

$arr2 = array(
        array(
            "countrySelected" => 3,
            "stateSelected" => Null,
            "citySelected" => Null
        )
);

$arr3 = array_merge_recursive($arr1, $arr2);
print_r($arr3);

Result:
Array
(
[0] => Array
    (
        [countrySelected] => 3
        [stateSelected] => 176
        [citySelected] => 551
    )

[1] => Array
    (
        [countrySelected] => 3
        [stateSelected] =>
        [citySelected] =>
    )

)

您可以使用数组\合并\递归:

$arr1 = array(
        array(
                "countrySelected" => 3,
                "stateSelected" => 176,
                "citySelected" => 551
        )
);

$arr2 = array(
        array(
            "countrySelected" => 3,
            "stateSelected" => Null,
            "citySelected" => Null
        )
);

$arr3 = array_merge_recursive($arr1, $arr2);
print_r($arr3);

Result:
Array
(
[0] => Array
    (
        [countrySelected] => 3
        [stateSelected] => 176
        [citySelected] => 551
    )

[1] => Array
    (
        [countrySelected] => 3
        [stateSelected] =>
        [citySelected] =>
    )

)
然后像下面这样组合数组

$arraythree = array($arrayone, $arraytwo);

var_dump($arraythree);
然后像下面这样组合数组

$arraythree = array($arrayone, $arraytwo);

var_dump($arraythree);

您可以使用
array\u merge\u recursive
检查简单示例


您可以使用
数组\u合并\u递归
检查简单示例


你能试试下面的代码吗

$arr1=array('countrySelected'=>3,'stateSelected'=>176,'citySelected'=>551);
$arr2=array('countrySelected'=>3,'stateSelected'=>'N/A','citySelected'=>'N/A');

print_r(array($arr1, $arr2));

你能试试下面的代码吗

$arr1=array('countrySelected'=>3,'stateSelected'=>176,'citySelected'=>551);
$arr2=array('countrySelected'=>3,'stateSelected'=>'N/A','citySelected'=>'N/A');

print_r(array($arr1, $arr2));

我认为您使用数组合并的方式不正确。我只是在上面创建了一个数组,得到了你期望的结果

$arr1=[];
$arr1[0]=["countrySelected"=>3,"stateSelected"=>NULL,"citySelected"=>NULL];
print_r($arr1);
我得到的数组低于输出

排列 ( [0]=>阵列 ( [countrySelected]=>3 [stateSelected]=> [城市选择]=> ) )

然后我创建另一个数组,就像你问题中的第二个数组

$arr1=[];

$arr1[0]=["countrySelected"=>3,"stateSelected"=>NULL,"citySelected"=>NULL];


print_r($arr1);
我得到的数组低于输出

排列 ( [0]=>阵列 ( [countrySelected]=>4 [stateSelected]=> [城市选择]=> ) )

然后我就合并了这个数组

print_r(数组合并($arr1,$arr2))

我得到了下面的结果

排列 ( [0]=>阵列 ( [countrySelected]=>3 [stateSelected]=> [城市选择]=> )

[1] =>阵列 ( [countrySelected]=>4 [stateSelected]=> [城市选择]=> )

)


我认为您使用数组合并的方式不正确。我只是在上面创建了一个数组,得到了你期望的结果

$arr1=[];
$arr1[0]=["countrySelected"=>3,"stateSelected"=>NULL,"citySelected"=>NULL];
print_r($arr1);
我得到的数组低于输出

排列 ( [0]=>阵列 ( [countrySelected]=>3 [stateSelected]=> [城市选择]=> ) )

然后我创建另一个数组,就像你问题中的第二个数组

$arr1=[];

$arr1[0]=["countrySelected"=>3,"stateSelected"=>NULL,"citySelected"=>NULL];


print_r($arr1);
我得到的数组低于输出

排列 ( [0]=>阵列 ( [countrySelected]=>4 [stateSelected]=> [城市选择]=> ) )

然后我就合并了这个数组

print_r(数组合并($arr1,$arr2))

我得到了下面的结果

排列 ( [0]=>阵列 ( [countrySelected]=>3 [stateSelected]=> [城市选择]=> )

[1] =>阵列 ( [countrySelected]=>4 [stateSelected]=> [城市选择]=> )

)


数组之间没有区别。你想做什么?你能把你的名字写下来吗code@Andreas问题已更新。@KishanOza问题已更新。您是如何使用
数组\u merge
?数组之间没有区别。你想做什么?你能把你的名字写下来吗code@Andreas问题已更新。@KishanOza问题已更新。您是如何使用
array\u merge
?抱歉,我使用了。我是新来的,所以请原谅这个错误,它不会再发生了!它创建的附加键为:[0]=>Array([0]=>ArraySorry,我创建了。我是新来的,因此请原谅错误,不会再次发生!它创建的附加键为:[0]=>Array([0]=>Array