我有2个数组。我想将它们合并为1个数组但有条件。如果Ref和Id相等,则合并
std::vector<std::atomic<int>> v(3);
v[0] = 1;
v[1] = 2;
v[2] = 3;
我想合并它们,所以我最终得到:
Array Number One
(
[0] => Array
(
[Id] => 60
[Name] => Water Authority
)
[1] => Array
(
[Id] => 63
[Name] => Service Station
)
Array Number Two
(
[0] => Array
(
[Date] => 2017-10-12
[Amount] => 130.00
[Ref] => 60
[Description] => Water Bill Oct
)
[1] => Array
(
[Date] => 2017-10-10
[Amount] => 130.00
[Ref] => 63
[Description] => Gas
)
[2] => Array
(
[Date] => 2017-09-17
[Amount] => 600.00
[Ref] => 60
[Description] => Water bill Sept
)
我该怎么做?我试过array_merge,但我知道它需要别的东西,只是不知道是什么!
答案 0 :(得分:1)
假设第一个数组为$ array1,第二个数组为array2
$ result = [];
foreach ($array1 as $key1 => $value1) {
foreach ($array2 as $key2 => $value2) {
if ($value1['Id']==$value2['Ref']) {
$result[]=$value2+$value1;
}
}
}
结果将如您所愿