合併多個陣列中的資料以形成基於行的結構
在資料操作任務中,通常需要將不同來源的資料組合起來建立綜合資料集。這可以透過合併多個數組的資料來實現。具體來說,當目標是建構基於行的結構時,array_merge_recursive 函數提供了一個強大的解決方案。
考慮以下範例。給出了兩個具有以下結構的陣列:
陣列1:
陣列2:
目標是將這些數組的內容合併到具有以下結構的單一數組:
要實現此目的,可以使用 array_merge_recursive 函數。此函數遞歸地合併數組,將具有相同鍵的值組合到巢狀數組中。但是,在給定的上下文中,數組具有數字鍵。為了讓 array_merge_recursive 正常運作,所有數字鍵必須轉換為字串(關聯陣列)。
以下程式碼片段示範了解決方案:
$ar1 = [ ['gross_value' => '100', 'quantity' => '1'], ['gross_value' => '200', 'quantity' => '1'] ]; $ar2 = [ ['item_title_id' => '1', 'order_id' => '4'], ['item_title_id' => '2', 'order_id' => '4'] ]; // Convert numeric keys to strings foreach ($ar1 as &$row) { $row = array_combine(array_keys($row), array_values($row)); } foreach ($ar2 as &$row) { $row = array_combine(array_keys($row), array_values($row)); } // Merge arrays $result = array_merge_recursive($ar1, $ar2); print_r($result);
執行此程式碼將產生所需的合併結果數組,兩個數組中的資料被組合成一個基於行的結構。
以上是如何在 PHP 中將多個數組合併為基於單行的結構?的詳細內容。更多資訊請關注PHP中文網其他相關文章!