array_merge_recursive
array_multisort
배열 함수 목록
PHP Manual

# array_merge

(PHP 4, PHP 5)

array_merge — 하나 이상의 배열을 병합

### 설명

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

하나 이상의 배열의 원소들을 병합하고 앞의 배열의 끝에 배열값들을 추가한다. 그 결과 배열을 반환한다.

입력되는 배열이 같은 문자열 키를 갖는다면, 그 키에 대해서 나중에 온 값이 이전에 오는 키에 대한 값을 덮어쓸것이다. 하지만, 그 배열이 숫자 키를 포함하면, 나중 값은 원래 값을 덮어쓰지 않고, 뒤에 추가될것이다.

하나의 배열만 주어지고, 그 배열이 숫자 인덱스로 되어 있으면, 키를 연속적으로 재인덱스합니다.

### 인수

`array1`

  병합할 초기 배열.

`array`

  재귀 병합할 배열 목록 변수.

### 반환값

결과 배열을 반환합니다.

### 예제

Example #1 array_merge() 예제

`<?php
$array1 = array("color" => "red", 2, 4);
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
$result = array_merge($array1, $array2);
print_r($result);
?>`

위 예제의 출력:

    Array
    (
        [color] => green
        [0] => 2
        [1] => 4
        [2] => a
        [3] => b
        [shape] => trapezoid
        [4] => 4
    )

Example #2 간단한 array_merge() 예제

`<?php
$array1 = array();
$array2 = array(1 => "data");
$result = array_merge($array1, $array2);
?>`

숫자 키는 다른 숫자로 재부여된다는것을 잊지 말것!

    Array
    (
        [0] => data
    )

배열을 온전히 보존하기를 원하고 그들 배열에 서로를 추가하고자 한다면(이전 키를 덮어쓰지 않음), + 연산자를 사용한다:

`<?php
$array1 = array();
$array2 = array(1 => "data");
$result = $array1 + $array2;
?>`

숫자 키는 보존될것이고 따라서 그 조합이 남겨진다.

    Array
    (
        [1] => data
    )

Warning

array_merge()의 동작은 PHP 5에서 바뀌었습니다. PHP 4와는 달리, array_merge()는 array형 변수만 받습니다. 그러나, 자료형 변환으로 다른 자료형을 사용할 수 있습니다. 아래 예제를 참고하십시오.

Example #3 array_merge() PHP 5 예제

`<?php
$beginning = 'foo';
$end = array(1 => 'bar');
$result = array_merge((array)$beginning, (array)$end);
print_r($result);
?>`

위 예제의 출력:

    Array
    (
        [0] => foo
        [1] => bar
    )

### 참고

- array_merge_recursive() - 두개 이상의 배열을 재귀적으로 병합
- array_combine() - 키를 위한 배열과 값을 위한 배열을 사용하여 배열을 생성
- 배열 연산자

array_merge_recursive
array_multisort
배열 함수 목록
PHP Manual