> 백엔드 개발 > PHP 문제 > PHP 배열 학습: 두 배열을 비교하고 차이점 집합을 찾는 방법

PHP 배열 학습: 두 배열을 비교하고 차이점 집합을 찾는 방법

青灯夜游
풀어 주다: 2023-03-11 21:38:01
원래의
4680명이 탐색했습니다.

이전 글에서는 배열을 비교하여 동일한 요소(교차점)를 얻는 방법을 소개했습니다. 관심이 있으시면 클릭하여 → "PHP 배열 학습: 두 배열을 비교하여 교차점을 찾는 방법"을 읽어보세요. 교차점을 찾을 수 있으므로 차이 집합도 찾을 수 있습니다. 차이 집합을 구하는 방법은 무엇입니까? 이 기사에서는 PHP에서 배열을 비교하여 다양한 요소(차이 집합)를 얻는 여러 가지 방법을 소개합니다.

이전 글과 마찬가지로 먼저 두 배열을 비교하고 차이점 집합을 찾는 함수를 살펴보겠습니다. PHP에는 여러 가지 함수가 내장되어 있습니다. 이 글에서는 주로 사용되는 세 가지 함수인 array_diff(), array_diff_key( ), array_diff_assoc(), 각각 "키 값", "키 이름", "키 값 및 키 이름" 측면에서 배열을 비교하고 차이 집합 요소를 반환합니다( 첫 번째 매개변수).

이해하기 어렵습니다. 코드 예제를 사용하여 array_diff(), array_diff_key() 및 array_diff_assoc()이 배열을 비교하고 차이점을 찾는 방법을 살펴보겠습니다.

다음 두 개의 배열이 있습니다:

$arr1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$arr2=array("a"=>"orange","b"=>"green","e"=>"red","r"=>"yellow");
로그인 후 복사

1. array_diff() 함수를 사용하세요 - 배열의 키 값을 비교하세요

로그인 후 복사

array_diff($arr1,$arr2... ) 함수 배열의 키 값만 비교하면 차이 배열의 요소가 비교 배열 $arr1에 존재하지만 다른 매개변수에는 존재하지 않습니다. $arr2 ... 배열입니다. array_diff($arr1,$arr2...)函数只比较数组的键值,会返回一个差集数组,差集数组中的元素是存在于被比较的数组$arr1中,但不存在于其他参数数组$arr2...中的。

我们来看看上面的示例,$arr1数组和$arr2数组比较,只存在于$arr1数组的键值只有:“blue”,因此输出的结果为:

PHP 배열 학습: 두 배열을 비교하고 차이점 집합을 찾는 방법

2、使用array_diff_key()函数--比较数组的键名

로그인 후 복사

array_diff_key($arr1,$arr2...)函数只比较数组的键名,同样返回一个差集数组,差集数组中的元素是存在于被比较的数组$arr1中,但不存在于其他参数数组$arr2...中的。

而在上面的示例,$arr1数组和$arr2数组中有两个键名不相同,以数组$arr1为准就会得到值“"c"=>"blue"”和“"d"=>"yellow"”,因此输出的结果为:

PHP 배열 학습: 두 배열을 비교하고 차이점 집합을 찾는 방법

3、使用array_diff_assoc()函数--比较数组的键名和键值

로그인 후 복사

array_diff_assoc($arr1,$arr2...)函数会将数组的键名和键值都进行比较,同样返回一个差集数组,差集元素和array_diff()、array_diff_key()一样会从被比较的数组$arr1中获取。

上例中,$arr1数组和$arr2数组进行比较,有三个不相同的元素,然后以数组$arr1为准会得到值“"a"=>"red"”、“"c"=>"blue"”、“"d"=>"yellow"

위의 예를 살펴보면 $arr1 배열과 $arr2 배열을 비교해 보면 $arr1 배열에만 존재하는 키 값은 다음과 같습니다. "blue"이므로 출력 결과는 다음과 같습니다.

PHP 배열 학습: 두 배열을 비교하고 차이점 집합을 찾는 방법PHP 배열 학습: 두 배열을 비교하고 차이점 집합을 찾는 방법

2. array_diff_key() 함수를 사용하세요 - 배열의 키 이름을 비교하세요

rrreee

array_diff_key($arr1,$arr2... )함수는 비교만 합니다. 배열의 키 이름도 차이 배열의 요소가 비교 배열 $arr1에 존재하지만 다른 매개변수 배열에는 존재하지 않습니다. $arr2.. . 안으로. 위의 예에는 $arr1 배열과 $arr2 배열에 서로 다른 두 개의 키 이름이 있습니다. >는 올바르게 ​​""c"=>"blue"" 및 ""d"=>"yellow"" 값을 얻게 되므로 출력 결과는 다음과 같습니다.

🎜PHP 배열 학습: 두 배열을 비교하고 차이점 집합을 찾는 방법🎜🎜🎜3 , array_diff_assoc() 함수를 사용하세요 - 배열의 키 이름과 키 값을 비교하세요 🎜🎜rrreee🎜array_diff_assoc($arr1,$arr2...) 이 함수는 배열의 키 이름과 키 값을 비교하면 array_diff() 및 array_diff_key()와 마찬가지로 비교된 배열 $arr1에서 차이 요소가 반환됩니다. 🎜🎜위의 예에서는 $arr1 배열과 $arr2 배열을 비교하여 세 가지 요소가 있으며 ""a"=>"red"", ""c"=>"blue"", ""d"= >"yellow" code>"이므로 출력 결과는 다음과 같습니다. 🎜🎜🎜🎜🎜그렇습니다. 다른 내용을 알고 싶다면 여기를 클릭하세요. → →🎜php 동영상 튜토리얼🎜🎜🎜마지막으로 PHP 배열에 대한 무료 동영상 튜토리얼을 추천합니다: 🎜PHP 함수 배열 배열 함수 동영상 설명🎜, 와서 배워보세요! 🎜

위 내용은 PHP 배열 학습: 두 배열을 비교하고 차이점 집합을 찾는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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