>  기사  >  백엔드 개발  >  PHP 배열을 결합할 때 ( ) 연산자가 실패하는 이유는 무엇입니까?

PHP 배열을 결합할 때 ( ) 연산자가 실패하는 이유는 무엇입니까?

DDD
DDD원래의
2024-10-24 10:38:29991검색

Why Does the ( ) Operator Fail When Combining PHP Arrays?

PHP에서 배열 연결: 연산자가 실패하는 이유

" " 연산자를 사용하여 배열을 결합하려고 하면 예상치 못한 결과가 발생할 수 있습니다. 다음 코드를 고려하십시오.

$array = array('Item 1');
$array += array('Item 2');
var_dump($array);

출력:

array(1) {
  [0] => string(6) "Item 1"
}

이것이 작동하지 않는 이유는 무엇입니까?

키 및 중복

문제는 배열 키와 중복 값에 있습니다. 주어진 코드의 두 배열 모두 키가 "0"이므로 중복 값이 ​​서로 덮어쓰게 됩니다. 원래 순서를 유지하고 중복을 방지하기 위해 PHP는 "0" 키의 첫 번째 값을 사용합니다.

해결책: 배열 병합

배열을 올바르게 연결하려면 array_merge를 사용하세요. ():

$arr1 = array('foo'); // Same as array(0 => 'foo')
$arr2 = array('bar'); // Same as array(0 => 'bar')
$combined = array_merge($arr1, $arr2);

array_merge()는 키-값 쌍을 유지하면서 배열을 병합합니다.

연산자를 사용해야 하는 경우

" " 연산자 다른 키로 배열을 결합할 때 여전히 유용합니다.

$arr1 = array('one' => 'foo');
$arr2 = array('two' => 'bar');
$combined = $arr1 + $arr2;

결과는 다음과 같습니다.

array('one' => 'foo', 'two' => 'bar');

요약하면 배열을 연결하여 순서를 유지하고 키 충돌을 방지하려면 array_merge()를 사용하세요. . 고유 키가 있는 배열을 병합하려면 " " 연산자를 사용하세요.

위 내용은 PHP 배열을 결합할 때 ( ) 연산자가 실패하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.