ネイティブ PHP 関数を使用した共有列値に基づく 2D 配列の効率的なマージ
複数の配列を効率的にマージすることは、PHP プログラミングの一般的なタスクです。この記事では、ネストされたループや複雑なプロシージャに頼ることなく、共有列値に基づいて 2 つの 2D 配列をマージするための最適なソリューションを検討します。
2 つのサンプル配列があるとします。
$array1 = [ ['rank' => '579', 'id' => '1'], ['rank' => '251', 'id' => '2'], ]; $array2 = [ ['size' => 'S', 'status' => 'A', 'id' => '1'], ['size' => 'L', 'status' => 'A', 'id' => '2'], ];
目標は、次のとおりです。これらの配列を、一致する ID に基づいて各配列の値を結合する新しい配列にマージします。値:
$mergedArray = [ ['size' => 'S', 'status' => 'A', 'id' => '1', 'rank' => '579'], ['size' => 'L', 'status' => 'A', 'id' => '2', 'rank' => '251'], ];
ネイティブ PHP 配列関数の利用
このマージ プロセスを容易にするために、PHP は 2 つのネイティブ関数を提供します:
コード例使用するarray_merge_recursive():
$mergedArray = array_merge_recursive($array1, $array2);
my_array_merge() を使用したコード例:
function my_array_merge(array &$array1, array &$array2) { $result = []; foreach ($array1 as $key => &$value) { $result[$key] = array_merge($value, $array2[$key]); } return $result; } $mergedArray = my_array_merge($array1, $array2);
どちらのメソッドも 2 つの配列を効果的にマージし、目的の出力を生成します。 。関数の選択は、開発者の特定のパフォーマンス要件とコードの明瞭さの好みによって異なります。
以上がネイティブ関数を使用して、共有列に基づいて 2 つの 2D PHP 配列を効率的にマージするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。