首页 >后端开发 >php教程 >如何在保留唯一键的同时合并 PHP 关联数组?

如何在保留唯一键的同时合并 PHP 关联数组?

Patricia Arquette
Patricia Arquette原创
2024-12-17 18:15:20281浏览

How Can I Merge PHP Associative Arrays While Preserving Unique Keys?

使用唯一键合并关联数组

在 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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn