使用唯一键合并关联数组
在 PHP 中,关联数组使用字符串键来访问值。合并两个这样的数组时,重复的键可能会导致原始值丢失。为了避免这种情况,有必要在组合数组时保留原始键。
考虑以下示例:
$array1 = [ '11' => '11', '22' => '22', '33' => '33', '44' => '44' ]; $array2 = [ '44' => '44', '55' => '55', '66' => '66', '77' => '77' ];
目标是合并 $array1 和 $array2,使得结果保留原始键并删除重复项,结果是:
$output = [ '11' => '11', '22' => '22', '33' => '33', '44' => '44', '55' => '55', '66' => '66', '77' => '77' ];
结合使用 array_unique 函数array_merge 没有达到预期的结果,因为它重新分配了键。更有效的方法是使用运算符,它在合并数组时保留原始键:
$output = $array1 + $array2;
此操作有效地组合两个数组,覆盖重复值。或者,要显式重新创建键,可以使用以下代码:
$output = array_combine($output, $output);
这两种方法都提供了一种解决方案,解决了将关联数组与唯一键合并同时保留原始值的问题。
以上是如何在保留唯一键的同时合并 PHP 关联数组?的详细内容。更多信息请关注PHP中文网其他相关文章!