ホームページ > バックエンド開発 > PHPチュートリアル > PHP で 2 つの連想配列を結合するにはどうすればよいですか?

PHP で 2 つの連想配列を結合するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-02 12:33:02
オリジナル
485 人が閲覧しました

How do I combine two associative arrays in PHP?

PHP での連想配列の結合

PHP では、array_merge() 関数を使用して 2 つの連想配列を 1 つに効率的に結合できます。その方法は次のとおりです。

次の 2 つの連想配列を考えます。

<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>
ログイン後にコピー

これにより、$array1 と $array2 の両方のすべてのキーと値のペアを含む新しい配列 $array3 が作成されます。重複キーの値は、2 番目の配列の値で上書きされます。

方法 2: 配列の加算 () 演算子

あるいは、配列の加算を使用することもできます。配列をマージする ( ) 演算子:

<code class="php">$array4 = $array1 + $array2;</code>
ログイン後にコピー

この演算子も配列をマージしますが、重複するキー値は上書きされません。代わりに、重複キーを持つ多次元配列が生成されます。

Result

どちらの場合も、$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 で 2 つの連想配列を結合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート