ホームページ > バックエンド開発 > PHPチュートリアル > PHP で複数の配列からのデータを効率的にマージするにはどうすればよいですか?

PHP で複数の配列からのデータを効率的にマージするにはどうすればよいですか?

Barbara Streisand
リリース: 2024-12-27 13:16:17
オリジナル
226 人が閲覧しました

How Can I Efficiently Merge Data from Multiple Arrays in PHP?

複数の配列の行データのマージ: 総合ガイド

プログラミングでは、複数の配列のデータを 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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート