首页  >  文章  >  后端开发  >  如何在 PHP 中组合两个关联数组?

如何在 PHP 中组合两个关联数组?

Patricia Arquette
Patricia Arquette原创
2024-11-02 12:33:02452浏览

How do I combine two associative arrays in PHP?

在 PHP 中合并关联数组

在 PHP 中,可以使用 array_merge() 函数有效地将两个关联数组合并为一个。具体方法如下:

考虑以下两个关联数组:

<code class="php">$array1 = ["name1" => "id1"];

$array2 = ["name2" => "id2", "name3" => "id3"];</code>

方法 1:array_merge()

合并数组,使用 array_merge() 函数,如下所示:

<code class="php">$array3 = array_merge($array1, $array2);</code>

这将创建一个新数组 $array3,其中包含 $array1 和 $array2 中的所有键值对。重复键的值将被第二个数组中的值覆盖。

方法 2:数组加法 ( ) 运算符

或者,您可以使用数组加法( ) 运算符合并数组:

<code class="php">$array4 = $array1 + $array2;</code>

此运算符也会合并数组,但不会覆盖重复的键值。相反,它将产生一个具有重复键的多维数组。

结果

在这两种情况下,$array3和$array4将是:

array(4) {
  ["name1"] => "id1",
  ["name2"] => "id2",
  ["name3"] => "id3"
}

单元测试

要对此功能进行单元测试,您可以创建测试用例来断言 array_merge() 函数或数组加法运算符的预期行为。这是使用 PHPUnit 的示例测试:

<code class="php">class ArrayMergeTest extends PHPUnit_Framework_TestCase
{
    public function testArrayMerge()
    {
        $array1 = ["name1" => "id1"];
        $array2 = ["name2" => "id2", "name3" => "id3"];
        $expectedArray = ["name1" => "id1", "name2" => "id2", "name3" => "id3"];

        $actualArray = array_merge($array1, $array2);

        $this->assertEquals($expectedArray, $actualArray);
    }
}</code>

以上是如何在 PHP 中组合两个关联数组?的详细内容。更多信息请关注PHP中文网其他相关文章!

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