首頁 >後端開發 >php教程 >合併具有重複鍵的陣列時如何保留鍵值對?

合併具有重複鍵的陣列時如何保留鍵值對?

Barbara Streisand
Barbara Streisand原創
2024-11-02 23:32:29910瀏覽

How to Preserve Key-Value Pairs When Merging Arrays with Duplicate Keys?

合併陣列時保留現有的鍵值對

在程式設計中,會出現這樣的情況:您需要合併兩個陣列,同時確保鍵-兩個數組中的值對都被保留。當存在重複鍵時,這將成為一個挑戰。

讓我們考慮提供的範例:

<code class="php">$A = array('a' => 1, 'b' => 2, 'c' => 3);
$B = array('c' => 4, 'd' => 5);

array_merge($A, $B);

// result
[a] => 1 [b] => 2 [c] => 4 [d] => 5</code>

如示範的,使用 array_merge 函數會導致 'c' => 遺失。 3個鍵值對。為了解決這個問題,我們需要採用不同的方法。

array_merge_recursive 函數是專門為這類場景設計的。與 array_merge 不同,它遞歸地合併數組,確保保留相同的鍵值對。產生的陣列將包含與重複鍵關聯的兩個值。

對於給出的範例,使用 array_merge_recursive 將產生:

<code class="php">array_merge_recursive($A, $B);

// result
[a] => 1 [b] => 2 [c] => [0 => 3, 1 => 4] [d] => 5</code>

如您所見,「c」鍵現在包含值同時為 3 和 4 的陣列。這種方法可讓您合併數組,同時保持現有鍵值關係的完整性。

以上是合併具有重複鍵的陣列時如何保留鍵值對?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn