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

PHP で異なるキーと値を持つ配列をマージするにはどうすればよいですか?

Susan Sarandon
リリース: 2024-12-31 13:07:12
オリジナル
927 人が閲覧しました

How to Merge Arrays with Different Keys and Values in PHP?

複数の配列からの行データのマージ

複数の配列からのデータのマージは、複雑なデータ構造を扱う場合の一般的な要件となることがあります。配列のキーと値が異なる場合、このタスクはより困難になります。

元のキ​​ーと値を保持しながら 2 つの配列をマージするには、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']
];
ログイン後にコピー

array_merge_recursive を使用してこれらの配列をマージするには、以下が必要です。まず、すべての数値キーが文字列に変換されていることを確認します。これは、array_map 関数を使用して行うことができます:

$ar1 = array_map('strval', $ar1);
$ar2 = array_map('strval', $ar2);
ログイン後にコピー

ここで、array_merge_recursive を使用して配列をマージできます:

$result = array_merge_recursive($ar1, $ar2);
ログイン後にコピー

結果として得られる $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 までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート