Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用相同的键合并数组,数组#u Merge不';我工作不好_Php_Arrays_Merge - Fatal编程技术网

Php 使用相同的键合并数组,数组#u Merge不';我工作不好

Php 使用相同的键合并数组,数组#u Merge不';我工作不好,php,arrays,merge,Php,Arrays,Merge,我有具有相同密钥的数组,如下所示: Array1( [00] => green [10] => red [20] => yellow ) Array2( [00] => avocado [10] => apple [20] => banana ) 我想要这个: Array_result( [00] => Array( [0] => green

我有具有相同密钥的数组,如下所示:

Array1(
    [00] => green
    [10] => red
    [20] => yellow
)

Array2(
    [00] => avocado
    [10] => apple
    [20] => banana
)
我想要这个:

Array_result(
    [00] => Array(
            [0] => green
            [1] => avocado
        )

    [10] => Array(
            [0] => red
            [1] => apple
        )

    [20] => Array(
            [0] => yellow
            [1] => banana
        ))
或者[0]、[1]、[2],我不介意这个键,我尝试了array\u merge,但效果不好

编辑:我不知道为什么,但array\u merge\u recursive打印了以下内容:

Array
(
    [00] => Array
        (
            [0] => green
            [1] => avocado
        )

    [0] => red
    [1] => apple
    [2] => yellow
    [3] => banana
)
您正在查找而不是
数组\u merge

<?php
$A = Array(00 => "green", 10 => "red", 20 => "yellow");
$B = Array(00 => "avocado", 10 => "apple", 20 => "banana");

$result = array_merge_recursive($A, $B);

print_r($result);?>

.

您要查找的不是
array\u merge

<?php
$A = Array(00 => "green", 10 => "red", 20 => "yellow");
$B = Array(00 => "avocado", 10 => "apple", 20 => "banana");

$result = array_merge_recursive($A, $B);

print_r($result);?>

.

试试看:

function merge($arr){
$n = array();
if(!empty($arr)){
foreach($arr as $a){
if(!empty($a)){
foreach($a as $k => $v){
$n[$k][] = $v;
}}}}
return $n;
}

// use
$a = array('00' => 'green', '10' => 'red', '20' => 'yellow');
$b = array('00' => 'avocado', '10' => 'apple', '20' => 'apple');
print_r(merge(array($a, $b)));
试试看:

function merge($arr){
$n = array();
if(!empty($arr)){
foreach($arr as $a){
if(!empty($a)){
foreach($a as $k => $v){
$n[$k][] = $v;
}}}}
return $n;
}

// use
$a = array('00' => 'green', '10' => 'red', '20' => 'yellow');
$b = array('00' => 'avocado', '10' => 'apple', '20' => 'apple');
print_r(merge(array($a, $b)));

接得好。从未偶然发现这个功能。PHP真的有一个处理一切事情的功能……疯狂。@TillHelgeHelwig,通过在google中键入问题发现了这一点。。。大惊喜:DNice接球。从未偶然发现这个功能。PHP真的有一个处理一切事情的功能……疯狂。@TillHelgeHelwig,通过在google中键入问题发现了这一点。。。大惊喜:这其实是一个很好的问题,+1。@Pachonk你这么认为吗?什么时候可以用SO而不是SO轻松解决呢?@TillHelgeHelwig,SO的目标是创建庞大的问题库,不管怎样。。。这个问题措辞很好,可能很容易找到。。。但这是类似问题中措辞最好的一个。这实际上是一个非常好的问题,+1。@Pachonk你这么认为吗?什么时候可以用SO而不是SO轻松解决呢?@TillHelgeHelwig,SO的目标是创建庞大的问题库,不管怎样。。。这个问题措辞很好,可能很容易找到。。。但这是类似问题中措辞最好的一个。这个解决方案对我来说很好,这个解决方案对我来说很好