[英]Combine array values with specific key has same value
我有以下數組:
[
{
amendment: 1,
lcnumber: "A1114564564CT",
31D: "New Note"
},
{
27: "0/0 (Number)(Total)",
amendment: 1,
lcnumber: "A1114564564CT",
},
{
amendment: 2,
lcnumber: "A1114564564CT",
31D: "IN SINGAPORE (120 Days from L/C issue date)",
32B: "USD"
},
{
27: "2/2 (Number)(Total)",
amendment: 2,
lcnumber: "A1114564564CT",
39B: "Exceeding"
}
]
我想做的是將這些值合並到一個具有相同amendment
計數的索引中
這是我預期的 output
[
{
amendment: 1,
lcnumber: "A1114564564CT",
31D: "New Note",
27: "0/0 (Number)(Total)",
},
{
amendment: 2,
lcnumber: "A1114564564CT",
31D: "IN SINGAPORE (120 Days from L/C issue date)",
32B: "USD",
27: "2/2 (Number)(Total)",
39B: "Exceeding"
},
]
我試過寫一個foreach
循環,但這沒有用
foreach($final_datas as $arrflight) {
$final_array[] = (object) array(
'lcnumber' => 'AZ300',
$arrflight['swift_code'] => $arrflight['note']
);
}
它並不完美,但它確實有效。 我相信有人會提供更清潔的解決方案。 我今天沒有喝足夠的咖啡。
$finalArray = [];
foreach ($originalArray as $arrParts) {
if (!array_key_exists($arrParts["amendment"], $finalArray)) {
$finalArray[$arrParts["amendment"]] = [];
}
foreach ($arrParts as $key => $value) {
$finalArray[$arrParts["amendment"]][$key] = $value;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.