我有一個帶有 common 的陣列activity_code。我需要pri在專案欄位中添加記錄
Array
(
[0] => Array
(
[pr] => Array
(
[id] => 1
[activity_code] => 20220101PR0001
[serial_number] => 0001/2022
)
[pri] => Array
(
[item] => Item 1
[description] => Description 1
[quantity] => 15
[unit] => Each
[unit_price] => 65000.00
)
)
[1] => Array
(
[pr] => Array
(
[id] => 1
[activity_code] => 20220101PR0001
[serial_number] => 0001/2022
)
[pri] => Array
(
[item] => Item 2
[description] => Description 2
[quantity] => 15
[unit] => Each
[unit_price] => 2500.00
)
)
)
它應該在items欄位內有 2 個陣列,但是我只插入了 1 個陣列。
這是代碼,我試過了。
foreach ($records as $key => $record) {
$purchaseRequisition = $record['pr'];
$items = $record['pri'];
if (!array_key_exists($purchaseRequisition['activity_code'], $purchaseArray)) {
$purchaseArray[$purchaseRequisition['activity_code']] = [];
}
$purchaseArray[$purchaseRequisition['activity_code']] = [
'serialNumber' => $record['pr']['serial_number'],
'items' => []
];
$purchaseArray[$purchaseRequisition['activity_code']]['items'][$key] = $items;
}
這是我需要的陣列結構

誰能告訴我我在這里犯了什么錯誤?
uj5u.com熱心網友回復:
使用以下代碼:
foreach ($records as $key => $record) {
$purchaseRequisition = $record['pr'];
$items[] = $record['pri'];
if (!array_key_exists($purchaseRequisition['activity_code'], $purchaseArray)) {
$purchaseArray[$purchaseRequisition['activity_code']] = [];
}
$purchaseArray[$purchaseRequisition['activity_code']] = [
'serialNumber' => $record['pr']['serial_number'],
'items' => []
];
$purchaseArray[$purchaseRequisition['activity_code']]['items'] = $items;
}
uj5u.com熱心網友回復:
您正在覆寫$purchaseArray[$purchaseRequisition['activity_code']],而不是向其中推入新元素。要推入陣列,請分配給$array[].
foreach ($records as $key => $record) {
$purchaseRequisition = $record['pr'];
$items = $record['pri'];
if (!array_key_exists($purchaseRequisition['activity_code'], $purchaseArray)) {
$purchaseArray[$purchaseRequisition['activity_code']] = [];
}
$purchaseArray[$purchaseRequisition['activity_code']][] = [
'serialNumber' => $record['pr']['serial_number'],
'items' => []
];
$purchaseArray[$purchaseRequisition['activity_code']]['items'][$key] = $items;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/462245.html
標籤:php
