PHP 병합 arrays 일반적으로 두 가지 방법이 있습니다. 하나는 더하기 기호를 직접 사용하여 추가하는 것이고, 다른 하나는 array_mergefunction을 사용하여 추가하는 것입니다. array_merge()는 두 개 이상의 배열 단위를 결합합니다. , 한 배열의 값이 이전 배열에 추가됩니다. 결과 배열을 반환합니다. 입력 배열에 동일한 string키 이름이 있는 경우 키 이름 뒤의 값이 이전 값을 덮어씁니다. 그러나 배열에 숫자 키가 포함된 경우 후속 값은 원래 값을 덮어쓰지 않고 추가됩니다.
둘 사이에는 약간의 차이가 있습니다.
배열 키 이름이 숫자 키 이름이고 병합할 두 배열에 동일한 이름의 숫자 키가 있는 경우 array_merge()를 사용하면 덮어쓰지 않습니다. 원래 값입니다. 배열을 병합하기 위해 "+"를 사용하면 처음 나타나는 값이 최종 결과로 반환되고 후속 배열에서 동일한 키 이름을 가진 해당 값을 "삭제"합니다(참고: 첫 번째 값을 덮어쓰지는 않지만 유지함). 값이 나타납니다. 동일한 배열 키 이름이 문자인 경우 "+" 연산자 는 키 이름이 숫자인 경우와 동일하지만 array_merge()는 동일한 키 이름의 이전 값을 덮어씁니다.
예:
<?php $array1 = array(1=>'0'); $array2 = array(1=> "data"); $result1 = $array2 + $array1;/*结果为$array2的值*/ print_r($result); $result = $array1 + $array2 ;/*结果为$array1的值*/ print_r($result); $result3 = array_merge($array2,$array1);/*结果为$array2和$array1的值,键名被重新分配*/ print_r($result3); $result4 = array_merge($array1,$array2);/*结果为$array1和$array2的值,键名被重新分配*/ print_r($result4); ?>
출력 결과:
Array ( [1] => data ) Array ( [1] => 0 ) Array ( [0] => data [1] => 0 ) Array ( [0] => 0 [1] => data )
코드:
<?php $array1 = array('asd'=>'0'); $array2 = array('asd' => "data"); $result1 = $array2 + $array1;/*结果为$array2的值*/ print_r($result); $result = $array1 + $array2 ;/*结果为$array1的值*/ print_r($result); $result3 = array_merge($array2,$array1);/*结果为$array1*/ print_r($result3); $result4 = array_merge($array1,$array2);/*结果为$array2*/ print_r($result4); ?>
출력 결과:
Array ( [asd] => data ) Array ( [asd] => 0 ) Array ( [asd] => 0 ) Array ( [asd] => data )
1 덧셈 방식, 값이 재설정되지 않습니다.
3. 병합 함수의 자연 인덱스는 재설정됩니다.
4. 병합 함수는 병합과 병합의 관계에 관계없이 끝에 있는 배열 매개변수의 값을 덮어쓰게 됩니다. 이전 배열 매개변수와 동일한 키 값
위 내용은 + 연산자를 사용한 PHP 병합 배열과 배열 함수 array_merge의 차이점에 대한 자세한 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!