> 백엔드 개발 > PHP 문제 > PHP의 배열에 중복된 요소가 있는지 확인하는 방법

PHP의 배열에 중복된 요소가 있는지 확인하는 방법

PHPz
풀어 주다: 2023-03-24 17:36:01
원래의
1483명이 탐색했습니다.

PHP는 웹 개발에 널리 사용되는 스크립팅 언어입니다. PHP 개발에서는 배열이라는 데이터 유형을 사용하는 경우가 많습니다. 배열에 중복된 요소가 있는지 확인하는 것도 매우 중요한 작업입니다. 이 기사에서는 PHP를 사용하여 배열에 중복 요소가 있는지 확인하는 방법에 대해 설명합니다.

통계에는 array_count_values() 함수를 사용하세요

또 다른 방법은 통계에 array_count_values() 함수를 사용하는 것입니다. 이 함수는 각 요소가 나타나는 횟수를 포함하는 새 배열을 반환합니다. 새 배열을 반복하여 중복 요소로 1개 이상 나타나는 요소를 확인할 수 있습니다.

다음은 샘플 코드입니다.

<?php

$arr = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;, &#39;orange&#39;, &#39;orange&#39;);
$arr_new = array_count_values($arr);

foreach($arr_new as $key => $value) {
    if($value != 1) {
        unset($arr[$key]);
    }
}

print_r($arr);
?>
로그인 후 복사

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

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

통계에 array_count_values() 함수를 사용하는 방법도 매우 좋고 실용성이 있습니다.

확장 지식: 중복 제거

  • 중복 요소를 제거하려면 array_unique() 함수를 사용하세요.

array_unique() 함수는 배열에서 중복 요소를 제거하기 위해 PHP에서 캡슐화한 함수입니다. 구문 구조는 다음과 같습니다.

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

이 함수는 중복 요소를 제거한 후 새 배열을 반환합니다. 여기서 sort_flags는 정렬 규칙을 설정하는 데 사용되는 선택적 매개 변수입니다. 기본적으로 이 함수는 모든 값의 문자열 비교를 수행하고 오름차순으로 정렬합니다. 필요에 따라 정렬할 매개변수를 선택할 수 있습니다.

다음은 예입니다.

<?php

$arr = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;, &#39;orange&#39;, &#39;orange&#39;);
$arr_new = array_unique($arr);
print_r($arr_new);
?>
로그인 후 복사

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

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

보시다시피 이 함수는 배열에서 중복 요소를 성공적으로 제거합니다.

  • 루프 중복 제거 방법 사용

PHP 개발에서는 루프를 사용하여 배열을 순회하고 적시에 중복 제거 작업을 수행할 수 있습니다. 구체적인 단계는 다음과 같습니다.

1. 배열의 길이를 가져옵니다.
count() 함수를 사용하여 배열의 길이를 가져올 수 있습니다.

2. 배열을 순환합니다.
for 루프 문을 사용하여 배열을 순회합니다. 이때 i와 j라는 두 변수를 사용할 수 있습니다. 여기서 i는 현재 연산 중인 요소를 가리키는 데 사용되고 j는 사용됩니다. 다음 요소를 가리킵니다.

3. 중복 요소가 있는지 확인
루프 내에서 if 문을 사용하여 i 요소가 j 요소와 동일한 경우 중복 요소가 있는 것으로 간주하고 unset() 함수를 사용하여 요소를 삭제할 수 있습니다.

다음은 샘플 코드입니다.

<?php

$arr = array(&#39;apple&#39;, &#39;banana&#39;, &#39;orange&#39;, &#39;orange&#39;, &#39;orange&#39;);
$len = count($arr);

for($i=0; $i<$len-1; $i++) {
    for($j=$i+1; $j<$len; $j++) {
        if($arr[$i] == $arr[$j]) {
            unset($arr[$j]);
        }
    }
}

print_r($arr);
?>
로그인 후 복사

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

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

보시다시피 루프를 통한 중복 제거 효과도 꽤 좋습니다

위 내용은 PHP의 배열에 중복된 요소가 있는지 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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