php - 如何使用foreach引用将array1与array2的匹配ID组合起来
问题描述
我有两个数组。array1
包含用户的详细信息并array2
具有个人详细信息。如何使用 foreach 引用合并array2
到?array1
$array1 = [
['id'=> 1,'name'=>'John Sena', 'lastname'=>'Jonn'],
['id'=> 2,'name'=>'Rock', 'lastname'=>'Rock Sena']
];
$array2 = [
['id'=>1, 'company'=>'Warner Brother'], ['id'=>2, 'company'=>'Metro'],['id'=>'1', 'Address'=>'USA']
];
解决方案
您可以尝试此代码,而不是编写 foreach 的:
$res = array_merge($array1, $array2);
$res = array_reduce($res, function($acc, $item) {
$acc[$item['id']] = isset($acc[$item['id']]) ?
array_merge($acc[$item['id']], $item) :
$acc[$item['id']] = $item;
return $acc;
});
推荐阅读
- php - 无法在函数中获取变量
- c# - 在命令提示符下执行带有参数的 C# 控制台应用程序
- javascript - 在不同的工作表(相同的工作簿)中记录输入值的日期,其中输入单元格在不同的工作表上
- c# - Visual Studio Intellisense 无法识别 System.Transactions
- json - 如何将 JSON 对象发送到另一台计算机?
- tcp - 如何使用 Apache Camel 通过 TCP 发送/接收二进制数据
- javascript - 多表达式三元运算符?
- html - 我有一个有 2 列的 flexbox,我可以让第二列在特定维度下的第一列之下吗?
- android - 以编程方式阻止(取消)Android 8 Oreo 中的来电?
- python - 有没有办法获得一组元组的组合?