SYNCERのロゴ
アイキャッチ画像

array_merge_recursive - 複数の配列を再帰的にマージする

array_merge_recursiveは、指定した複数の配列を再帰的にマージする関数です。キー名が重複しても、上書きされずにマージされます。

構文

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

パラメータ

$array1

対象の配列。

$...

第2引数以降にマージの対象となる配列を複数指定できます。

返り値

array

引数に指定した複数の配列を再帰的にマージしてできた新しい配列。

サンプルコード

<?php
	$array1 = [
		"a" => 1 ,
		"b" => 2 ,
	] ;

	$array2 = [
		"b" => 3 ,
		"c" => 4 ,
	] ;

	$response = array_merge_recursive( $array1, $array2 ) ;

デモ

再帰的にマージする

array_mergeの場合、キー名が重複すると後の配列の値が前の配列の値を上書きしてしまいます。しかし、array_merge_recursiveの場合は上書きせずに、配列としてマージされます。"b"のキーに注目して下さい。

<?php
/*** このコードは編集できます。 ***/

	$array1 = [
		"a" => 1 ,
		"b" => 2 ,
	] ;

	$array2 = [
		"b" => 3 ,
		"c" => 4 ,
	] ;

	$response = array_merge_recursive( $array1, $array2 ) ;

	print_r( $response ) ;
Array
(
    [a] => 1
    [b] => Array
        (
            [0] => 2
            [1] => 3
        )

    [c] => 4
)
  • Twitterでシェア
  • Facebookでシェア
  • Google+でシェア
  • はてなブックマークでシェア
  • pocketに保存
  • LINEでシェア
更新履歴
2017年6月21日 (水)
コンテンツを公開しました。