プログラミングでは、複数の配列のデータを 1 つのまとまった構造に結合する必要が生じることがよくあります。これを達成するには、整合性を維持しながらデータを結合する効果的な方法が必要です。
実際的な例を説明するために、2 つの配列があると仮定します。1 つは製品関連の情報を含み、もう 1 つは注文の詳細を含みます。あなたのタスクは、これらの配列をマージして、製品データと注文データの両方を取得する統合配列を取得することです。
array_merge を単独で使用するだけでは十分ではありません。配列を 1 つの次元に平坦化するだけだからです。ただし、array_merge_recursive は要素を再帰的にマージし、キーを条件として使用できるようにするため役に立ちます。
マージの準備として、数値配列キーを文字列に変換し、連想配列を作成する必要があります。この変換により、マージ プロセス中にキーが競合しないことが保証されます。
配列が正しく設定されている場合は、array_merge_recursive($ar1, $ar2) を利用してマージを実行します。この関数は両方の配列の要素をマージし、製品データと注文データの両方を含むキーを持つ配列を作成します。
さらに明確にするために、質問に示されている例を検討してください。
$ar1 = [ ['gross_value' => '100', 'quantity' => '1'], ['gross_value' => '200', 'quantity' => '1'] ]; $ar2 = [ ['item_title_id' => '1', 'order_id' => '4'], ['item_title_id' => '2', 'order_id' => '4'] ];
By array_merge_recursive を適用し、キーを文字列に変換すると、次のマージされた配列が得られます:
$result = [ [ 'gross_value' => '100', 'quantity' => '1', 'item_title_id' => '1', 'order_id' => 4 ], [ 'gross_value' => '200', 'quantity' => '1', 'item_title_id' => '2', 'order_id' => 4 ] ];
これにより結合技術を使用すると、複数の配列のデータを効果的に結合して、情報の統合ビューを提供できます。
以上がPHP で複数の配列からのデータを効率的にマージするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。