我有这两个阵列:
$array1 = [
'1' => 285.52,
'2' => 427.76
];
$array2 = [
'1' => 123.44,
'2' => 48.32
];
每个人的钥匙都是客户的身份证,第一个是欠款,第二个是付款金额,我希望达到以下目的:
$mergedArrays = [
'1' => [
'owed' => 285.52,
'payed' => 123.44
],
'2' => [
'owed' => 427.76,
'payed' => 48.32
]
];
我想知道是否有PHP函数这样做,我尝试使用array_merge_recursive,但它只是将四个元素组合在一起。
任何帮助都会非常感激。
答案 0 :(得分:1)
你可以循环第一个数组并根据键
合并第二个数组foreach($array1 as $key => $val) {
$mergedArrays[$key] = array('owed' => $val, 'payed' => $array2[$key]);
}
答案 1 :(得分:1)
$array1 = [
'1' => 285.52,
'2' => 427.76
];
$array2 = [
'1' => 123.44,
'2' => 48.32
];
$final_arr = array_map(function($a1, $a2) {
return array(
'owed' => $a1,
'paid' => $a2
);
}, $array1, $array2);
$final_arr = array_combine(array_keys($array1), $final_arr);
var_dump($final_arr);
根据评论,您似乎正在寻找内置的PHP函数来为您完成任务,而不是寻求传统的循环。但是 Fabio 提供的循环方法是最简单的方法,没有任何其他复杂的方法。我已尽力使用核心PHP函数为您提供解决方案。希望你对此感到高兴!