방법 1: array_unique() 함수를 사용하여 배열을 중복 제거합니다. 구문은 "array_unique($arr)"입니다. 2. PHP 배열 키 이름의 반복 불가능 기능을 활용하고 array_flip() 함수를 사용하여 배열의 키 이름의 합을 두 번 뒤집습니다. 키 값의 위치는 "array_flip(array_flip($arr))"입니다. 3. PHP 배열 키 이름의 반복 불가능한 기능을 활용합니다. 배열의 키 이름과 키 값 위치를 두 번 바꾸려면 foreach 문을 사용하세요.
이 튜토리얼의 운영 환경: 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); ?>
방법 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); ?>
방법 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!