PHP에서 배열은 여러 값(요소)을 저장할 수 있는 매우 유연하고 일반적으로 사용되는 데이터 유형이며 이러한 값은 모든 데이터 유형이 될 수 있습니다. 다양한 배열을 추가해야 하는 경우 다양한 추가 방법과 해당 예방 조치를 이해해야 합니다.
array_merge() 함수는 두 개 이상의 배열을 새 배열로 병합할 수 있습니다. 이 함수는 입력 배열의 모든 요소를 새 배열에 넣고 인덱스를 재설정합니다. 0부터 시작하면 원래 배열의 키 이름을 유지할 수 있으며 동일한 키 이름의 값을 덮어쓰지 않습니다. 예는 다음과 같습니다.
$array1 = array('a', 'b', 'c'); $array2 = array('d', 'e', 'f'); $array3 = array_merge($array1, $array2); print_r($array3);
출력은 다음과 같습니다.
Array ( [0] => a [1] => b [2] => c [3] => d [4] => e [5] => f )
동일한 키 이름을 가진 값이 배열인 경우 array_merge() 함수는 이를 재귀적으로 병합합니다. 즉, 병합합니다. 하위 배열을 함께 사용합니다. 키 이름이 숫자인 경우 병합된 결과는 자동으로 숫자 인덱스 배열로 변환됩니다.
PHP에서는 + 연산자를 사용하여 두 배열을 새 배열로 병합할 수 있지만 array_merge() 함수와 달리 + 연산자는 왼쪽 배열만 유지합니다. 오른쪽 배열의 키 이름과 값은 무시됩니다. 예는 다음과 같습니다.
$array1 = array('a', 'b', 'c'); $array2 = array('d' => 1, 'e', 'f'); $array3 = $array1 + $array2; print_r($array3);
출력은 다음과 같습니다.
Array ( [0] => a [1] => b [2] => c [d] => 1 [1] => e [2] => f )
배열의 키 이름이 문자열인 경우 + 연산자는 이를 연관 배열로 처리합니다. 왼쪽 배열에 숫자 및 문자열 인덱스 키가 모두 포함되어 있으면 오른쪽 배열의 문자열 인덱스 키가 무시됩니다.
같은 키 이름의 값이 배열인 경우 array_merge() 함수를 사용하여 병합하면 해당 키의 값만 덮어쓰게 됩니다. 이전 배열에 이름을 지정하지만 하위 배열을 재귀적으로 병합하지는 않습니다. 동일한 키 이름을 가진 하위 배열을 반복적으로 병합해야 하는 경우 array_merge_recursive() 함수를 사용할 수 있습니다. 예는 다음과 같습니다.
$array1 = array('a' => array('b'), 'c'); $array2 = array('a' => array('d'), 'e'); $array3 = array_merge_recursive($array1, $array2); print_r($array3);
출력은 다음과 같습니다.
Array ( [a] => Array ( [0] => b [1] => d ) [0] => c [1] => e )
array_merge_recursive() 함수는 하위 배열을 함께 병합하고 동일한 키 이름을 가진 값을 하나의 배열로 병합합니다.
array_replace() 함수는 두 개 이상의 배열을 새로운 배열로 병합할 수 있지만 array_merge() 함수와는 달리 키 이름이 같은 값은 배열로 병합되지 않고 후속 값으로 대체됩니다. 다음은 예입니다.
$array1 = array('a', 'b', 'c'); $array2 = array('b', 'd'); $array3 = array_replace($array1, $array2); print_r($array3);
출력 결과는 다음과 같습니다.
Array ( [0] => a [1] => b [2] => c [3] => d )
array_replace() 함수는 한 배열에 존재하는 키 이름이 존재하지 않는 경우에만 키 이름이 있는 값을 대체한다는 점에 유의해야 합니다. 다른 배열에서는 해당 값이 변경되지 않습니다.
요약하자면, PHP는 배열 병합을 위한 다양한 방법을 제공하며 실제 필요에 따라 어떤 방법을 사용할지 선택할 수 있습니다. 원래 배열 키 이름을 유지해야 하는 경우 array_merge() 함수를 사용할 수 있습니다. 하위 배열을 반복적으로 병합해야 하는 경우 값을 동일한 키 이름으로 바꿔야 하는 경우 array_merge_recursive() 함수를 사용할 수 있습니다. 이를 배열로 병합하는 대신 array_replace() 함수를 사용할 수 있습니다.
위 내용은 PHP에 다른 배열 추가의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!