Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.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多维数组合并_Php_Arrays_Multidimensional Array_Array Merge - Fatal编程技术网

基于键的PHP多维数组合并

基于键的PHP多维数组合并,php,arrays,multidimensional-array,array-merge,Php,Arrays,Multidimensional Array,Array Merge,我有两个阵列: $array1 = [ '1' => 285.52, '2' => 427.76 ]; $array2 = [ '1' => 123.44, '2' => 48.32 ]; 每一个上的键都是客户的id,第一个是欠款金额,第二个是已付金额,我希望实现以下目标: $mergedArrays = [ '1' => [ 'owed' => 285.52, 'payed' => 123.44 ]

我有两个阵列:

$array1 = [
  '1' => 285.52,
  '2' => 427.76
];

$array2 = [
  '1' => 123.44,
  '2' => 48.32
];
每一个上的键都是客户的id,第一个是欠款金额,第二个是已付金额,我希望实现以下目标:

$mergedArrays = [
   '1' => [
     'owed'  => 285.52,
     'payed' => 123.44
   ],
   '2' => [
     'owed'  => 427.76,
     'payed' => 48.32
   ]
];
我想知道是否有一个PHP函数可以这样做,我尝试使用array\u merge\u recursive,但它只是将四个元素组合成一个数组


非常感谢您的帮助。

您可以循环第一个数组,并根据键合并第二个数组

foreach($array1 as $key => $val) {
    $mergedArrays[$key] = array('owed' => $val, 'payed' => $array2[$key]);
}

您可以循环第一个数组,并根据键合并第二个数组

foreach($array1 as $key => $val) {
    $mergedArrays[$key] = array('owed' => $val, 'payed' => $array2[$key]);
}

根据评论,您似乎在寻找内置PHP函数来完成任务,而不是传统的循环。但是,Fabio提供的循环方法是最简单的方法,不需要任何其他复杂的方法。我已经尽力使用核心PHP函数为您提供解决方案。希望你对它满意


根据评论,您似乎在寻找内置PHP函数来完成任务,而不是传统的循环。但是,Fabio提供的循环方法是最简单的方法,不需要任何其他复杂的方法。我已经尽力使用核心PHP函数为您提供解决方案。希望你对它满意

传统循环的问题是什么?没有嵌套/链接一些内置函数(如with和类似函数)就没有内置功能。@HillaryClintonEmailRemover我不知道,我认为使用内置函数更有效,谢谢你,传统的循环有什么问题?没有嵌套/链接一些内置函数(如with和类似函数)就没有内置功能。@HillaryClintonEmailRemover我不知道,我认为使用内置函数更有效,谢谢他说的非传统功能没有什么不是传统的内置功能我想我不知道他为什么要用一些复杂的东西来做简单的任务她说非传统功能没有什么不是传统的内置功能我想我不知道他为什么要用一些复杂的东西来做简单任务