> 백엔드 개발 > PHP 튜토리얼 > 중복 배열을 제거하려면 PHP array_unique() 함수를 사용하십시오.

중복 배열을 제거하려면 PHP array_unique() 함수를 사용하십시오.

WBOY
풀어 주다: 2023-06-27 12:40:02
원래의
1416명이 탐색했습니다.

웹 애플리케이션을 개발할 때 어레이 중복을 제거해야 하는 경우가 많습니다. PHP는 이러한 상황을 처리하기 위해 매우 편리한 array_unique() 함수를 제공합니다. array_unique() 함수는 배열에서 중복된 요소를 제거하고 새 배열을 반환할 수 있습니다.

array_unique() 함수의 기본 구문은 다음과 같습니다.

array_unique(array $array, int $sort_flags = SORT_STRING): array
로그인 후 복사

그 중 $array 매개변수는 중복 요소를 제거하는 배열을 지정하며, $sort_flags는 정렬 규칙을 지정하는 선택적 매개변수입니다. SORT_STRING 또는 SORT_LOCALE_STRING은 각각 값 기준, 문자열 기준 및 현지화된 문자열 기준 정렬을 의미합니다. $sort_flags를 지정하지 않으면 함수는 기본적으로 SORT_STRING 규칙을 사용합니다.

이제 배열 중복 제거를 위해 array_unique() 함수를 사용하는 방법을 보여주는 예를 살펴보겠습니다.

<?php
//定义一个包含重复元素的数组
$fruits = array("apple", "banana", "orange", "apple", "pear", "banana");

//使用array_unique()函数去重
$unique_fruits = array_unique($fruits);

//打印去重后的数组
print_r($unique_fruits);
?>
로그인 후 복사

위 코드는 다음 결과를 출력합니다.

Array
(
    [0] => apple
    [1] => banana
    [2] => orange
    [4] => pear
)
로그인 후 복사

보시다시피 4개의 요소만 남아 있습니다. $unique_fruits 배열, 중복된 "apple" 및 "banana"가 제거되었습니다.

array_unique() 함수는 배열의 키 값을 다시 인덱싱한다는 점에 유의해야 합니다. 이는 중복 요소를 제거한 후 $unique_fruits 배열의 키 번호가 0부터 다시 매겨짐을 의미합니다.

원본 배열에서 중복 요소의 마지막 복사본을 유지하려면 배열을 역순으로 순회한 다음 unset() 함수를 사용하여 중복 요소의 이전 복사본을 삭제할 수 있습니다. 구체적인 코드는 다음과 같습니다.

<?php
$names = array("Tom", "Jack", "Mary", "Tom", "John", "Mary");
$unique_names = array();
for($i = count($names) - 1; $i >= 0; $i--){
   if(!in_array($names[$i], $unique_names)){
      array_unshift($unique_names, $names[$i]);
   }
   else{
      unset($names[$i]);
   }
}
print_r($names); //输出数组中仅包含重复元素的最后一个副本
print_r($unique_names); //输出去重后的数组
?>
로그인 후 복사

위 코드는 다음 두 줄을 출력합니다.

Array
(
    [2] => Mary
    [4] => John
)

Array
(
    [0] => Tom
    [1] => Jack
    [2] => Mary
    [4] => John
)
로그인 후 복사

이런 방식으로 $unique_names 배열은 중복 제거된 배열을 저장하고 $names 배열은 중복 요소의 마지막 복사본만 유지합니다. .

array_unique() 함수는 PHP의 매우 실용적인 함수 중 하나입니다. 이 함수는 배열에서 중복 요소를 쉽게 제거하여 배열 처리 작업을 더 쉽게 만들어줍니다.

위 내용은 중복 배열을 제거하려면 PHP array_unique() 함수를 사용하십시오.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿