
array_merge() 함수는 두 개 이상의 배열을 하나의 배열로 합쳐주는 함수입니다.
두 개의 배열을 합칠 때, 중복된 키가 있는 경우, array_merge() 함수는 마지막에 지정된 키의 값을 사용합니다.
예를 들어,
$array1 = array('name' => 'John', 'age' => 30);
$array2 = array('name' => 'Jane', 'city' => 'Seoul');
$array3 = array_merge($array1, $array2);
print_r($array3);
위 코드를 실행할 때, $array3의 결과는 다음과 같습니다.
Array
(
[name] => Jane
[age] => 30
[city] => Seoul
)
$array1의 'name'이 overwritten되지 않습니다.
array_merge() 함수의 옵션으로 중복된 키를 처리할 수 있는 방법은 없습니다.
만약 중복된 키를 처리할 수 있는 방법이 필요하다면, array_merge() 함수 대신에 array_merge_recursive() 함수를 사용할 수 있습니다.
array_merge_recursive() 함수는 중복된 키가 있는 경우, 키가 배열인 경우, 값을 병합해줍니다.
예를 들어,
$array1 = array('name' => 'John', 'age' => array('height' => 180, 'weight' => 70));
$array2 = array('name' => 'Jane', 'age' => array('height' => 160, 'weight' => 50));
$array3 = array_merge_recursive($array1, $array2);
print_r($array3);
위 코드를 실행할 때, $array3의 결과는 다음과 같습니다.
Array
(
[name] => Array
(
[0] => John
[1] => Jane
)
[age] => Array
(
[height] => Array
(
[0] => 180
[1] => 160
)
[weight] => Array
(
[0] => 70
[1] => 50
)
)
[city] => Seoul
)
array_merge_recursive() 함수는 중복된 키를 처리할 수 있습니다.
2025-03-24 05:20