lt1

PHP で多次元配列をマージするにはどうすればよいですか?

PHP で 2 つの多次元配列を結合したい場合は、引き続き使用する必要があります。 array_merge、ではありません array_merge_recursive。 混乱した? 私もそうでした。何が起こっているのか説明しましょう。

まずは何なのか説明しましょう array_merge_recursive たとえば、次の 2 つの配列を取り上げます。

$first = (
    'key' => 'original'
);

$second = (
    'key' => 'override'
);

使用する array_merge_recursive 結果は次のようになります。

array_merge_recursive($first, $second);






オリジナルをオーバーライドする代わりに key 価値、 array_merge_recursive 元の値と新しい値の両方を含む配列を作成しました。

この単純な例では奇妙に見えますが、値の 1 つがすでに配列であり、その配列をオーバーライドするのではなく、その配列内の別の項目をマージしたい場合には、実際にはより便利です。

$first = (
    'key' => ('original')
);

$second = (
    'key' => 'override'
);

この場合、 array_merge_recursive 最初の例と同じ結果が得られます。つまり、 $second 配列を取得し、それを内の値に追加します。 $first 配列、これはすでに配列そのものでした。

array_merge_recursive($first, $second);






したがって、多次元配列をマージしたい場合は、単に次のように使用できます。 array_merge、複数レベルの配列を問題なく処理できます。

$first = (
    'level 1' => (
        'level 2' => 'original'
    )
);

$second = (
    'level 1' => (
        'level 2' => 'override'
    )
);

array_merge($first, $second);





そうは言っても、次を使用することもできます。 + 多次元配列をマージする演算子ですが、動作は次の演算子と若干異なります。 array_merge

tpyoに気づきましたか? PR を送信して修正できます。 このブログで起こっていることについて最新の情報を入手したい場合は、 私のメーリングリストに登録してください: [email protected] に電子メールを送信してください。リストに追加させていただきます。

次の投稿
スティッチャー アルファ 5 -stitcher.io
前の投稿
イベントソーシングへの私の歩み

ノート:

AZ: 動物の世界、ペット、ペット、野生の自然に関するカテゴリー記事…
SP:スポーツカテゴリー。
New vs Ne: ニュースコラム。
Te: テクノロジー カテゴリ。
Gt:エンターテインメントカテゴリー。
Bt: 占い、星占い、超常現象、超常現象。
Ta:人生コラム。