ホームページ >バックエンド開発 >PHPチュートリアル >PHP で異なるキーを持つ複数の配列を単一の配列にマージするにはどうすればよいですか?

PHP で異なるキーを持つ複数の配列を単一の配列にマージするにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-28 18:12:11580ブラウズ

How Can I Merge Multiple Arrays with Different Keys into a Single Array in PHP?

複数の配列からの行データの結合

異なる配列からのデータを統合しようとして、ユーザーは最近、内容を結合する際に課題に遭遇しました。希望の形式に変換します。問題の配列には、次のような総額、数量、商品タイトル ID、注文 ID などの詳細が含まれています:

Array 1:
[
    ['gross_value' => '100', 'quantity' => '1'],
    ['gross_value' => '200', 'quantity' => '1']
]

Array 2:
[
    ['item_title_id' => '1', 'order_id' => '4'],
    ['item_title_id' => '2', 'order_id' => '4']
];

意図した結果は、次のような、すべてのフィールドが結合されたマージされた配列になります。

Merged Array:
[
    [
        'gross_value' => '100',
        'quantity' => '1',
        'item_title_id' => '1',
        'order_id' => 4
    ],
    [
        'gross_value' => '200',
        'quantity' => '1',
        'item_title_id' => '2',
        'order_id' => 4
    ]
]

この課題に対処するために、array_merge_recursive 関数を使用した解決策が提案されました。この関数を使用すると、連想配列を効果的に組み合わせて、重複キーが適切にマージされるようになります。すべての数値キーを文字列に変換すると、配列が結合され、結合できるようになります。

以下のコード スニペットは、このソリューションのアプリケーションを示しています。

$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']];

$result = array_merge_recursive($ar1, $ar2);

print_r($result);

実行すると、コードは、問題ステートメントで指定されているように、目的のマージされた配列形式を生成します。

以上がPHP で異なるキーを持つ複数の配列を単一の配列にマージするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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