(PHP 4, PHP 5)
array_merge — 하나 이상의 배열을 병합
하나 이상의 배열의 원소들을 병합하고 앞의 배열의 끝에 배열값들을 추가한다. 그 결과 배열을 반환한다.
입력되는 배열이 같은 문자열 키를 갖는다면, 그 키에 대해서 나중에 온 값이 이전에 오는 키에 대한 값을 덮어쓸것이다. 하지만, 그 배열이 숫자 키를 포함하면, 나중 값은 원래 값을 덮어쓰지 않고, 뒤에 추가될것이다.
하나의 배열만 주어지고, 그 배열이 숫자 인덱스로 되어 있으면, 키를 연속적으로 재인덱스합니다.
병합할 초기 배열.
재귀 병합할 배열 목록 변수.
결과 배열을 반환합니다.
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 )
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 )