>  기사  >  백엔드 개발  >  중복 없이 PHP 배열을 연결하는 방법

중복 없이 PHP 배열을 연결하는 방법

WBOY
WBOY원래의
2023-05-19 20:40:36809검색

PHP는 매우 인기 있는 프로그래밍 언어로 배열에 대해 다양한 작업을 수행할 수 있는 강력한 배열 기능을 가지고 있습니다. PHP에서 배열 연결은 매우 일반적인 작업입니다. 그러나 두 배열을 연결해야 할 경우 중복 요소가 나타날 가능성이 높습니다. 그러면 어떻게 해야 합니까? 이 기사에서는 PHP 배열 함수를 사용하여 배열을 연결하고 중복 요소를 방지하는 방법을 소개합니다.

1. array_merge() 함수를 사용하여 배열 연결

PHP는 두 개 이상의 배열을 새 배열로 병합하는 데 사용할 수 있는 매우 편리한 함수 array_merge()를 제공합니다. 구문은 다음과 같습니다.

array array_merge ( array $array1 [, array $... ] )

이 함수는 두 개 이상의 배열을 매개변수로 받을 수 있으며, 이러한 배열의 모든 요소를 ​​새 배열로 병합하고 이 새 배열을 반환합니다. 다음은 간단한 데모입니다.

$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f');
$result = array_merge($array1, $array2);
print_r($result);

출력 결과는 다음과 같습니다.

Array (
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
)

마찬가지로 세 개의 배열을 새 배열로 병합할 수 있습니다.

$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f');
$array3 = array('g', 'h', 'i');
$result = array_merge($array1, $array2, $array3);
print_r($result);

출력 결과는 다음과 같습니다.

Array (
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
    [6] => g
    [7] => h
    [8] => i
)

볼 수 있습니다. 출력 결과에서 array_merge() 함수는 여러 배열을 하나의 배열로 병합할 수 있습니다. 그러나 둘 이상의 배열에 동일한 요소가 있는 경우 해당 요소는 새 배열에서 반복됩니다.

2. array_unique() 함수를 사용하여 중복 요소 제거

PHP는 매우 편리한 배열 함수 array_unique()를 제공합니다. 이 함수는 배열에서 중복 요소를 제거하고 첫 번째 요소만 유지하면서 새 배열을 반환하는 데 사용할 수 있습니다. 요소가 나타납니다. 구문은 다음과 같습니다.

array array_unique ( array $array [, int $sort_flags = SORT_STRING ] );

이 함수는 배열을 매개변수로 받아들이고 중복 요소를 포함하지 않는 새 배열을 반환합니다. 기본적으로 이 함수는 중복 요소를 제거하고 처음 나타나는 요소를 유지합니다. 다음은 간단한 데모입니다.

$array = array('a', 'b', 'c', 'a', 'b', 'c');
$result = array_unique($array);
print_r($result);

출력은 다음과 같습니다.

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

출력에서 볼 수 있듯이 array_unique() 함수는 배열에서 중복된 요소를 제거하고 새 배열을 반환할 수 있습니다. 이 새로운 배열은 해당 요소의 첫 번째 항목만 유지합니다.

3. array_merge() 및 array_unique() 함수를 사용하여 배열 연결

두 배열을 새 배열로 연결하는 것은 매우 일반적인 작업입니다. 그러나 두 배열에 동일한 요소가 있는 경우 해당 요소는 새 배열에서 반복됩니다. 이러한 상황을 피하기 위해 먼저 array_merge() 함수를 사용하여 두 배열을 결합한 다음 array_unique() 함수를 사용하여 중복 요소를 제거할 수 있습니다. 다음은 간단한 데모입니다.

$array1 = array('a', 'b', 'c');
$array2 = array('c', 'd', 'e');
$result = array_unique(array_merge($array1, $array2));
print_r($result);

출력 결과는 다음과 같습니다.

Array (
    [0] => a
    [1] => b
    [2] => c
    [4] => d
    [5] => e
)

출력 결과에서 볼 수 있듯이 먼저 array_merge() 함수를 사용하여 $array1 및 $array2 배열을 새 배열로 연결합니다. , 그런 다음 array_unique( ) 함수를 사용하여 중복된 요소를 제거하고 마지막으로 중복되지 않은 새 배열을 얻습니다.

4. array_push() 함수를 사용하여 배열 연결

PHP는 하나 이상의 요소를 배열 끝에 푸시하는 데 사용할 수 있는 또 다른 함수 array_push()도 제공합니다. 이 함수의 구문은 다음과 같습니다.

int array_push ( array &$array , mixed $values [, mixed $... ] );

이 함수는 배열을 매개변수로 받아들이고 하나 이상의 요소를 배열 끝에 푸시하여 새 배열의 길이를 반환합니다. 다음은 간단한 데모입니다.

$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f');
foreach($array2 as $value) {
    if(!in_array($value, $array1)) {
        array_push($array1, $value);
       }
}
print_r($array1);

출력 결과는 다음과 같습니다.

Array (
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
)

출력 결과에서 볼 수 있듯이 먼저 $array1 배열의 요소와 $array2 배열의 요소를 하나씩 비교합니다. 이 요소가 $array1 배열에 존재하지 않으면 array_push() 함수를 사용하여 이 요소를 배열의 끝으로 밀어 넣고 마지막으로 중복 없이 새 배열을 가져옵니다.

요약:

위의 소개를 통해 PHP에서 배열을 중복 없이 이어붙이는 방법이 매우 간단하다는 것을 알 수 있습니다. PHP에서 제공하는 배열 함수 array_merge(), array_unique()를 이용하여 동작할 수도 있고, array_push() 함수를 이용하여 동작할 수도 있습니다. 다만, 이러한 함수를 사용할 때에는 배열에 null 값이나 Boolean 값이 존재할 수 있다는 점을 충분히 고려해야 한다는 점에 유의해야 한다. 왜냐하면 이러한 값은 비교할 때 몇 가지 문제를 일으키기 때문입니다. 따라서 이러한 기능을 사용할 때에는 프로그램의 정확성과 신뢰성을 보장하기 위해 먼저 판단하고 필터링하는 것이 가장 좋습니다.

위 내용은 중복 없이 PHP 배열을 연결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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