配列をマージするときに既存のキーと値のペアを保持する
プログラミングでは、キーを確保しながら 2 つの配列をマージする必要がある状況が発生します。両方の配列の値のペアは保持されます。これは、重複キーが存在する場合に問題になります。
次の例を考えてみましょう。
<code class="php">$A = array('a' => 1, 'b' => 2, 'c' => 3); $B = array('c' => 4, 'd' => 5); array_merge($A, $B); // result [a] => 1 [b] => 2 [c] => 4 [d] => 5</code>
示されているように、array_merge 関数を使用すると、'c' => が失われます。 3 つのキーと値のペア。この問題に対処するには、別のアプローチを採用する必要があります。
array_merge_recursive 関数は、このようなシナリオ向けに特別に設計されています。 array_merge とは異なり、配列を再帰的にマージし、同一のキーと値のペアが確実に保持されるようにします。結果の配列には、重複キーに関連付けられた両方の値が含まれます。
上記の例では、array_merge_recursive を使用すると次の結果が生成されます。
<code class="php">array_merge_recursive($A, $B); // result [a] => 1 [b] => 2 [c] => [0 => 3, 1 => 4] [d] => 5</code>
ご覧のとおり、'c' キーには次の値が含まれています。 3 と 4 の両方を値として持つ配列。このアプローチにより、既存のキーと値の関係の整合性を維持しながら配列をマージできます。
以上が重複キーを持つ配列をマージするときにキーと値のペアを保持するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。