我可以加入两个数组-PHP吗

我可以加入两个数组-PHP吗,php,sql,arrays,json,Php,Sql,Arrays,Json,我想合并两个阵列,它们具有相同的结构 这是我的第一个阵列: [rows] => Array ( [0] => Array ( [kdregister] => 10865701 [pagu] => 339.4157454 [real] => 328.633577646 [real2] => 328.633577646 ) ) 这是第二个阵列: [row] => Arr

我想合并两个阵列,它们具有相同的结构

这是我的第一个阵列:

[rows] => Array (
    [0] => Array (
        [kdregister] => 10865701
        [pagu] => 339.4157454
        [real] => 328.633577646
        [real2] => 328.633577646
        )
)
这是第二个阵列:

[row] => Array (
    [0] => Array (
        [kdregister] => 10865701
        [kegiatan] => name the game
        [pagu] => 0
        [real] => 0
        [real2] => 0
        )
)
我也有同样的价值

[kdregister]=>10865701
我想得到这样的结果

[row] => Array (
    [0] => Array (
        [kdregister] => 10865701
        [kegiatan] => name the game
        [pagu] => 0
        [real] => 0
        [real2] => 0
        [pagu] => 339.4157454
        [real] => 328.633577646
        [real2] => 328.633577646
        )

你们能帮帮我吗?谢谢

最简单的方法是
array\u merge\u recursive()。它将创建一个可用数组,其中包含
行中出现的2个数据

// setup your example arrays
$a1['rows'][] = ['kdregister' => 10865701, 'pagu' => 339.4157454, 'real' => 328.633577646, 'real2' => 328.633577646];
$a2['rows'][] = ['kdregister' => 10865701, 'kegiatan'=> 'Name of game', 'pagu' => 0, 'real' => 0, 'real2' => 0];

$a3 = array_merge_recursive($a1,$a2);
print_r($a3);
结果

Array
(
    [rows] => Array
        (
            [0] => Array
                (
                    [kdregister] => 10865701
                    [pagu] => 339.4157454
                    [real] => 328.633577646
                    [real2] => 328.633577646
                )
            [1] => Array
                (
                    [kdregister] => 10865701
                    [kegiatan] => Name of game
                    [pagu] => 0
                    [real] => 0
                    [real2] => 0
                )
        )
)

为了合并两个数组,您需要使用array_merge方法并过滤出唯一字符,您需要执行以下操作:

$ab = array_unique(array_merge($a, $b));

试试这个男人,这是我的工作

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

        foreach ($array_merge['row'] as $key1 => $value1) {
            foreach ($array_merge['rows'] as $key2 => $value2) {
                if ($value1['kdregister'] == $value2['kdregister']) {
                    $array[$key2] = array_merge($value1,$value2);
                }   
            }
        }

不幸的是,您需要的结果是一个无效数组,您不能有两个具有相同密钥的实例,但是如果在其中一个数组中我尝试替换密钥,您能帮助我吗@RiggsFolly@Rafy,你可以这样做,你必须有不同的密钥来解决你的问题。还有一个问题,在这个数组中有很多数据,这实际上会丢失一些数据!在一个数组中不可能有相同的索引。是的,因此如果他们确实需要所有数据,就像您必须假设他们从请求的结果数组中所做的那样,这将无法做到这一点。在这种情况下,您需要构建一个具有唯一索引的数组,索引的值将保持原样,但您需要更改结果数组的索引/键,我知道,请参阅我的答案