>  기사  >  백엔드 개발  >  PHP에서 배열을 병합하는 방법에는 여러 가지가 있습니다.

PHP에서 배열을 병합하는 방법에는 여러 가지가 있습니다.

青灯夜游
青灯夜游원래의
2021-06-01 17:59:3327025검색

PHP에서 배열을 병합하는 방법에는 다음과 같은 4가지가 있습니다. 1. 더하기 "+" 연산자를 사용합니다. 구문은 "array 1+array 2+.."입니다. 2. array_push() 함수를 사용합니다. array_merge() 함수를 사용하세요. 4. array_merge_recursive() 함수를 사용하세요.

PHP에서 배열을 병합하는 방법에는 여러 가지가 있습니다.

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

1 더하기 "+" 연산자 사용:

두 배열의 값을 직접 병합합니다.

$a = [1,2,3,'a'=>'a'];
$b = ['a'=>'b',4,5,'b'=>'c',6,7,'a'];
$c = $a + $b;

print_r($a);
print_r($b);
print_r($c);

//$a
Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [a] => a
)

//$b
Array
(
    [a] => b
    [0] => 4
    [1] => 5
    [b] => c
    [2] => 6
    [3] => 7
    [4] => a
)

//$c
Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [a] => a
    [b] => c
    [3] => 7
    [4] => a
)

배열을 병합하려면 "+"를 사용하세요. 키가 동일하면 이전 배열 값이 다음 배열 값을 덮어씁니다.

2. 변수를 다른 배열에 넣으려면

array_push() 함수를 사용하세요.

$a = [1,'a'=>'aa',2,'b'=>'bb'];
$b = [1,'a'=>'aa',2,'b'=>'bb'];
print_r($a);
print_r($b);
array_push($a, $b);
print_r($a);

//$a
Array
(
    [0] => 1
    [a] => aa
    [1] => 2
    [b] => bb
)

//$b
Array
(
    [0] => 1
    [a] => aa
    [1] => 2
    [b] => bb
)

// array_push过后的$a
Array
(
    [0] => 1
    [a] => aa
    [1] => 2
    [b] => bb
    [2] => Array
        (
            [0] => 1
            [a] => aa
            [1] => 2
            [b] => bb
        )

)

변수가 배열에 들어간 후 해당 숫자 인덱스는 현재에서 가장 작은 숫자여야 한다는 것을 인쇄된 값에서 볼 수 있습니다. array Index + 1 (현재 배열에 숫자 인덱스가 없으면 새 요소에 해당하는 인덱스는 0입니다.)

3. array_merge() 함수

를 사용하여 두 배열의 키를 직접 병합합니다. 두 배열이 동일하면 다음 배열의 값이 이전 배열의 값을 덮어씁니다.

$a = [1,'2'=>2,'a'=>'a','b'=>'b'];
$b = [1,'2'=>3,'a'=>'c','b'=>'d','c'=>'e'];
$c = array_merge($a,$b);
print_r($a);
print_r($b);
print_r($c);

//$a
Array
(
    [0] => 1
    [2] => 2
    [a] => a
    [b] => b
)

//$b
Array
(
    [0] => 1
    [2] => 3
    [a] => c
    [b] => d
    [c] => e
)

//$c
Array
(
    [0] => 1
    [1] => 2
    [a] => c
    [b] => d
    [2] => 1
    [3] => 3
    [c] => e
)

두 배열의 키가 동일할 경우 후자 배열의 값이 이전 배열의 값을 덮어쓰는 것을 볼 수 있습니다. 단, 숫자 인덱스나 숫자 문자열 인덱스의 경우 순서대로 재설정됩니다. (첫 번째 배열의 첫 번째 숫자 인덱스 요소는 0부터 순차적으로 채워집니다.)

4 ​​array_merge_recursive() 함수

를 사용하여 배열을 병합하고, 동일한 키는 키의 값을 하위 배열로 병합합니다

$a = [1,'2'=>2,'a'=>'a','b'=>'b'];
$b = [1,'2'=>3,'a'=>'a','b'=>'d','c'=>'e'];
$c = array_merge_recursive($a,$b);
print_r($a);
print_r($b);
print_r($c);


//$a
Array
(
    [0] => 1
    [2] => 2
    [a] => a
    [b] => b
)

//$b
Array
(
    [0] => 1
    [2] => 3
    [a] => a
    [b] => d
    [c] => e
)

//$c
Array
(
    [0] => 1
    [1] => 2
    [a] => Array
        (
            [0] => a
            [1] => a
        )

    [b] => Array
        (
            [0] => b
            [1] => d
        )

    [2] => 1
    [3] => 3
    [c] => e
)

"array_merge_recursive" 메서드를 사용할 때 동일한 키를 가진 요소는 다음과 같이 키 이름을 변경하지 않고 유지하면서 새 배열로 통합됩니다. 병합된 배열($a 및 $b의 결합된 배열의 하위 요소) 단, 숫자 인덱스나 숫자 문자열 인덱스의 경우에는 순서대로 재설정됩니다(첫 번째 배열의 첫 번째 숫자 인덱스 요소는 0부터 순차적으로 채워집니다). 해당 숫자 인덱스가 동일하더라도 동일한 인덱스를 가진 요소는 하위 배열에 통합되지 않습니다.

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 PHP에서 배열을 병합하는 방법에는 여러 가지가 있습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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