PHP の array_merge_recursive() 関数の使用方法の概要

WBOY
リリース: 2023-06-27 15:06:01
オリジナル
1264 人が閲覧しました

PHP の array_merge_recursive() 関数は、2 つ以上の配列を 1 つの配列にマージするメソッドです。array_merge() 関数との違いは、配列要素をマージするだけでなく、各配列もマージすることです。各配列の要素が再帰的に結合されて、より大きな配列になります。したがって、array_merge_recursive() 関数は、深くネストされており、配列を再帰的にマージする必要がある場合に非常に役立ちます。この記事では、array_merge_recursive() 関数の具体的な使用方法を紹介します。

array_merge_recursive() 関数の基本構文は次のとおりです。

array array_merge_recursive(array $array1 [, array $array2 [, array $... ]] )

このうち、$array1 は必須パラメータであり、マージされる最初の配列を表します。 $array2 から $arrayN は、マージされる他の配列を示すオプションのパラメーターです。

例 1:

次は、2 つの配列を 1 つにマージする方法を示す簡単な例です:

$array1 = array("color" => array("favorite" => "red"), 5);
$array2 = array(10, "color" => array("favorite" => "green", "blue"));

$result = array_merge_recursive($array1, $array2);
print_r($result);
ログイン後にコピー

出力は次のとおりです:

Array
(
    [color] => Array
        (
            [favorite] => Array
                (
                    [0] => red
                    [1] => green
                )
            [0] => blue
        )
    [0] => 5
    [1] => 10
)
ログイン後にコピー

配列要素が配列に正常にマージされ、同じ配列キー名が保存されていることがわかります。

例 2:

次の例は、配列に基づいて他の配列を追加する方法を示します。具体的には、まず「people」という名前の配列を作成し、次に「John」、「Sarah」、「Michael」という名前の 3 つの配列をこの配列にマージします。

$people = array(
    "John" => array("age" => 25, "sex" => "male"),
    "Sarah" => array("age" => 31, "sex" => "female"),
);

$people = array_merge_recursive($people, array(
    "John" => array("height" => "6'1""),
    "Michael" => array("age" => 37)
));

print_r($people);
ログイン後にコピー

出力結果は次のとおりです。 #「John」の「age」と「sex」のキー名がすでに存在し、「height」のキー名がマージ中に追加され、「Michael」の配列が「people」の配列に完全に追加されたことがわかります。 。つまり、array_merge_recursive() 関数は 2 つの異なる配列をより大きな配列に完全にマージすることができ、同じキー名の値は再帰的にマージされ、異なるキー名の値は新しい配列に追加されます。

概要:

array_merge_recursive() 関数は、複数の配列をエンドツーエンドでマージする必要がある場合に非常に便利に使用できます。配列内にネストされたサブ配列がある場合、この関数はこれらの配列を再帰的にマージし、サブ配列内のキー名の競合を回避できます。

以上がPHP の array_merge_recursive() 関数の使用方法の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!