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 サイトの他の関連記事を参照してください。