首页  >  文章  >  后端开发  >  合并具有重复键的数组时如何保留键值对?

合并具有重复键的数组时如何保留键值对?

Barbara Streisand
Barbara Streisand原创
2024-11-02 23:32:29870浏览

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