$v1){$r1[$v1]=$k1;}foreach($r1 as $k2=>$v2){$r2[$v2]=$k2;}"."/> $v1){$r1[$v1]=$k1;}foreach($r1 as $k2=>$v2){$r2[$v2]=$k2;}".">

>백엔드 개발 >PHP 문제 >PHP의 배열에서 동일한 값을 제거하는 방법

PHP의 배열에서 동일한 값을 제거하는 방법

青灯夜游
青灯夜游원래의
2022-09-28 18:21:053735검색

세 가지 방법: 1. "array_unique(array)" 구문인 array_unique를 사용합니다. 2. "array_flip(array_flip(array))" 구문인 array_flip()을 사용합니다. 3. " foreach ($arr $k1=>$v1){$r1[$v1]=$k1;}foreach($r1 as $k2=>$v2){$r2[$v2]=$k2;} ” .

PHP의 배열에서 동일한 값을 제거하는 방법

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

배열에서 동일한 값을 제거하는 것은 배열에서 중복된 값을 제거하는 것입니다. PHP 배열에서 중복 항목을 제거하는 방법에는 여러 가지가 있습니다. 아래에서 이를 소개하겠습니다.

방법 1: 중복 제거 함수 사용 array_unique()

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

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

array_unique(array,sortingtype)
Parameters Description
array 필수입니다. 배열을 지정합니다.
정렬 유형 선택 사항입니다. 정렬 유형을 지정합니다. 가능한 값:
  • SORT_STRING - 기본값. 각 항목을 문자열로 처리합니다.
  • SORT_REGULAR - 각 항목을 일반 순서로 정렬합니다(표준 ASCII, 유형이 변경되지 않음).
  • SORT_NUMERIC - 각 항목을 숫자로 처리합니다.
  • SORT_LOCALE_STRING - 현재 로케일을 기반으로 각 항목을 문자열로 처리합니다(setlocale()을 통해 변경 가능).

반환 값: 필터링된 배열을 반환합니다.​

예: 동일한 값 제거 ​​

<?php
$arr1 =array("a"=>"Cat",2,"b"=>"Dog","c"=>"Cat",2,3,4,3);
var_dump($arr1);
$arr2=array_unique($arr1);
var_dump($arr2);
?>

PHP의 배열에서 동일한 값을 제거하는 방법

방법 2: array_flip() 함수 사용

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

배열의 키 이름은 고유하며 반복적으로 존재하지 않습니다.

이 기능을 사용하면 배열의 두 값이 동일한 경우 배열을 뒤집은 후에도 마지막 키와 값이 유지되므로 간접적으로 배열 중복 제거를 달성할 수 있습니다.

<?php
$arr =array("a"=>"Cat",2,"b"=>"Dog","c"=>"Cat",2,3,4,3);
var_dump($arr);
$arr1 = array_flip($arr);//先反转一次,去掉重复值
var_dump($arr1);
$arr2 = array_flip($arr1);//再反转回来,得到去重后的数组
var_dump($arr2);
?>

PHP의 배열에서 동일한 값을 제거하는 방법

방법 1과 방법 2의 차이점:

반복되는 요소의 마지막 키와 값을 얻으려면 array_flip()을 사용하고, 반복되는 요소의 첫 번째 키와 값을 얻으려면 array_unique를 사용하세요.

방법 3: foreach 문과 두 개의 빈 배열 사용

또는 키 이름의 고유한 기능을 사용하고 foreach 문과 두 개의 빈 배열을 사용하여 키 이름과 키 값의 위치를 ​​반대로 바꿉니다. 배열을 두 번.

<?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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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