ホームページ  >  記事  >  バックエンド開発  >  データを失わずに、一致するキーを持つ配列をマージするにはどうすればよいですか?

データを失わずに、一致するキーを持つ配列をマージするにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-04 03:20:30351ブラウズ

How to Merge Arrays with Matching Keys Without Losing Data?

一致するキーを持つ配列を再帰的に結合する

ソフトウェア開発では、配列を結合してデータを統合するのが一般的です。ただし、同一のキーを持つ配列を結合すると、問題が生じる可能性があります。 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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。