SYNCER

SYNCER

array_merge() - 複数の配列をマージする

公開日:

array_mergeは、指定した複数の配列を1つにマージする関数です。添字ではないキー名は、後の配列のものに上書きされる点にご注意下さい。添字は0から新しく割り振られます。

構文

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

パラメータ

$array1

対象の配列。

$...

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

返り値

array

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

サンプルコード

配列をマージする

2つの配列を1つにマージします。添字は0から新しく割り振られます。

php

<?php

	// 配列
	$queue1 = [ "a", "b" ] ;
	$queue2 = [ "c", "d" ] ;

	// 実行
	$result = array_merge( $queue1, $queue2 ) ;

	// 返り値
	print_r( $result ) ;

結果 (出力内容) - PHP7.0.21

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
)

重複するキー名

添字ではない重複するキー名がある場合、前の配列の値を後の配列の値が上書きします。

php

<?php

	// 配列
	$queue1 = [
		"a" => 1 ,
		"b" => 2 ,
	] ;

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

	// 実行
	$result = array_merge( $queue1, $queue2 ) ;

	// 返り値
	print_r( $result ) ;

結果 (出力内容) - PHP7.0.21

Array
(
    [a] => 1
    [b] => 3
    [c] => 4
)

添字を振り直す

マージといっても、この関数は配列を1つだけ指定して実行することができます。その場合は単純に「添字を振り直す」という働きになります。

php

<?php
	// 配列
	$queue = [
		999 => "a" ,
		1000 => "b" ,
	] ;

	// 実行
	$result = array_merge( $queue ) ;

	// 返り値
	print_r( $result ) ;

結果 (出力内容) - PHP7.0.21

Array
(
    [0] => a
    [1] => b
)

サンドボックス

ソースコードを編集してarray_merge()の挙動を確認して下さい。

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
)

参考リンク

  • PHP - 公式マニュアル。