一致するキーを持つ配列を再帰的に結合する
ソフトウェア開発では、配列を結合してデータを統合するのが一般的です。ただし、同一のキーを持つ配列を結合すると、問題が生じる可能性があります。 array_merge() 関数は、同じキーで値を上書きすることで配列をマージしますが、データが失われる可能性があります。
次の例を考えてみましょう。
$A = ['a' => 1, 'b' => 2, 'c' => 3]; $B = ['c' => 4, 'd' => 5]; array_merge($A, $B); // Result: ['a'] => 1 ['b'] => 2 ['c'] => 4 ['d'] => 5
ご覧のとおり、キー 'c の値は' が上書きされ、値 3 が失われます。この問題に対処するには、代わりに array_merge_recursive() 関数を使用できます。
$A = ['a' => 1, 'b' => 2, 'c' => 3]; $B = ['c' => 4, 'd' => 5]; array_merge_recursive($A, $B); // Result: ['a'] => 1 ['b'] => 2 ['c'] => [3, 4] ['d'] => 5
array_merge_recursive() は、同じキーを持つ値を組み合わせて配列を再帰的にマージします。配列に入れます。この場合、結果の配列には、キー 'c' ([3, 4]) に関連付けられたすべての値が含まれます。これにより、一致するキーを持つ配列をマージするときにデータが失われることがなくなります。
以上がデータを失わずに、一致するキーを持つ配列をマージするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。