> 백엔드 개발 > PHP 문제 > PHP 배열에서 중복 요소를 삭제하는 방법

PHP 배열에서 중복 요소를 삭제하는 방법

青灯夜游
풀어 주다: 2023-03-17 18:58:01
원래의
1878명이 탐색했습니다.

방법 1: array_unique() 함수를 사용하여 배열을 중복 제거합니다. 구문은 "array_unique($arr)"입니다. 2. PHP 배열 키 이름의 반복 불가능 기능을 활용하고 array_flip() 함수를 사용하여 배열의 키 이름의 합을 두 번 뒤집습니다. 키 값의 위치는 "array_flip(array_flip($arr))"입니다. 3. PHP 배열 키 이름의 반복 불가능한 기능을 활용합니다. 배열의 키 이름과 키 값 위치를 두 번 바꾸려면 foreach 문을 사용하세요.

PHP 배열에서 중복 요소를 삭제하는 방법

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

php는 배열에서 중복 요소를 삭제하는 여러 가지 방법을 제공합니다. 아래에서 알아봅시다.

방법 1: array_unique() 함수를 사용하여 배열 중복 제거

array_unique() 함수는 배열에서 중복된 값을 제거하는 데 사용됩니다. 두 개 이상의 배열 값이 동일한 경우 첫 번째 값만 유지되고 나머지 값은 제거됩니다.

참고: 보관된 배열은 첫 번째 배열 항목의 키 유형을 유지합니다.

<?php 
header("content-type:text/html;charset=utf-8");
$array = array(1,2,3,3,4,2,3,5,6,4,5,7,8,9,10); 
var_dump($array);       
 
$result = array_unique($array);
echo "删除重复元素后的数组";
//var_dump(array_values($filtered_array)); 
var_dump($result);
?>
로그인 후 복사

PHP 배열에서 중복 요소를 삭제하는 방법

방법 2: array_flip() 함수 사용

array_flip() 함수는 배열의 키 이름과 해당 관련 키 값을 역전/교환하는 데 사용됩니다.

배열의 두 값이 동일하면 반전 후에도 마지막 키와 값이 유지되는 기능이 있습니다. 이 기능을 사용하여 배열의 중복 제거를 간접적으로 달성합니다.

<?php
header("content-type:text/html;charset=utf-8");
$a = array(1, 5, 2, 5, 1, 3, 2, 4, 5);
// 输出原始数组
echo "原始数组 :";
var_dump($a);
// 通过使用翻转键和值移除重复值
$a = array_flip($a);
// 通过再次翻转键和值来恢复数组元素
$a = array_flip($a);
// 重新排序数组键
$a = array_values($a);
// 输出更新后的数组
echo "更新数组 :";
var_dump($a);
?>
로그인 후 복사

PHP 배열에서 중복 요소를 삭제하는 방법

방법 3: foreach 문을 사용하여 배열의 키 이름과 키 값 위치를 두 번 뒤집습니다.

1단계: 2개의 빈 배열을 정의하여 키 이름과 키 값을 저장합니다. 두 번 반전됨 키 값

$res1=[];
$res2=[];
로그인 후 복사

2단계: foreach 문을 사용하여 원래 배열을 순회하고 원래 배열 키 이름과 키 값을 빈 배열에 키 값과 키 이름으로 할당합니다

foreach ($array as $k1 => $v1){  //在每次循环中会将当前数组的值赋给 $v1,键名赋给 $k1
    $res1[$v1]=$k1;
}
로그인 후 복사

역방향 키 이름과 키 값이 있는 배열

3단계: foreach 문을 사용하여 역방향 배열을 순회하고 역방향 배열의 키 이름과 키 값을 다른 빈 배열에 키 값과 키 이름으로 할당합니다

foreach ($res1 as $k2 => $v2){  
    $res2[$v2]=$k2;
}
로그인 후 복사

코드 구현하기

<?php 
header("content-type:text/html;charset=utf-8");
function f($arr){
	var_dump($arr);
	$res1=[];
	$res2=[];
	foreach($arr as $k1=>$v1){
		$res1[$v1]=$k1;
	}
	foreach ($res1 as $k2 => $v2){  
	    $res2[$v2]=$k2;
	}
	echo "去重后的数组:";
	var_dump($res2);
}

$arr=array(1,2,3,4,5,4,3,2,1,0);
f($arr);
?>
로그인 후 복사

PHP 배열에서 중복 요소를 삭제하는 방법

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

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

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