>백엔드 개발 >PHP 문제 >PHP 배열에서 중복 데이터를 제거하는 방법

PHP 배열에서 중복 데이터를 제거하는 방법

PHPz
PHPz원래의
2023-04-23 17:49:25646검색

실제 개발에서는 배열에서 중복 데이터를 지워야 하는 경우가 많습니다. PHP에서는 중복 데이터를 제거하는 것이 쉬운 작업입니다. PHP는 이 작업을 완료하기 위해 많은 내장 함수를 제공하기 때문입니다.

다음은 배열에서 중복 데이터를 제거하는 데 사용할 수 있는 일부 PHP 내장 함수입니다.

  1. array_unique() 함수

array_unique()를 사용하여 배열을 중복 제거할 수 있습니다. 원래 배열의 모든 고유 값을 포함하는 새 배열을 반환합니다.

사용법:

$array = array("a","b","c","d","a","b","e");
$new_array = array_unique($array);
print_r($new_array);

출력:

Array(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [6] => e
)
  1. array_diff() 함수

array_diff() 함수는 두 배열을 비교하고 서로 다른 요소가 포함된 새 배열을 반환하는 데 사용할 수 있습니다.

사용법:

$array1 = array("a","b","c","d","a","b","e");
$array2 = array("c", "d", "e", "f");
$new_array = array_diff($array1, $array2);
print_r($new_array);

출력:

Array(
    [0] => a
    [1] => b
)
  1. array_merge() 함수

array_merge() 함수는 여러 배열을 하나의 배열로 병합하는 데 사용할 수 있습니다. 병합 후 중복된 데이터가 있는 경우 마지막에 발생한 값이 유지됩니다.

사용법:

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

출력:

Array(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => a
    [5] => b
    [6] => e
    [7] => c
    [8] => d
    [9] => e
    [10] => f
)
  1. array_intersect() 함수

array_intersect() 함수는 두 배열을 비교하고 두 배열에 모두 존재하는 요소가 포함된 새 배열을 반환하는 데 사용할 수 있습니다.

사용법:

$array1 = array("a","b","c","d","a","b","e");
$array2 = array("c", "d", "e", "f");
$new_array = array_intersect($array1, $array2);
print_r($new_array);

출력:

Array(
    [2] => c
    [3] => d
    [6] => e
)

배열의 중복 데이터를 모두 제거하려면 위 기능을 조합하여 사용할 수 있습니다. 구체적인 방법은 다음과 같습니다:

$array1 = array("a","b","c","d","a","b","e");
$array2 = array("c", "d", "e", "f");
$new_array = array_merge(array_diff($array1, array_intersect($array1, $array2)), array_diff($array2, array_intersect($array1, $array2)));
print_r($new_array);

출력:

Array(
    [0] => a
    [1] => b
    [4] => f
)

위의 방법은 배열의 모든 중복 데이터를 지우고 다른 모든 요소를 ​​유지할 수 있습니다. 첫 번째 또는 마지막 중복 데이터를 유지해야 하는 경우 다음 방법을 사용할 수 있습니다.

첫 번째 중복 데이터 유지:

$new_array = array_unique($array1);

마지막 중복 데이터 유지:

$new_array = array_intersect($array1, array_unique(array_reverse($array1)));

위 내용은 PHP 배열에서 중복 데이터를 제거하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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