PHP array_intersect_uassoc() 함수
예제
두 개의 배열의 키 이름과 키 값을 비교하고(사용자 정의 함수를 사용하여 키 이름을 비교), 교집합을 반환합니다:
<?php function myfunction($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } $a1=array("a"=>"red","b"=>"green","c"=>"blue"); $a2=array("d"=>"red","b"=>"green","e"=>"blue"); $result=array_intersect_uassoc($a1,$a2,"myfunction"); print_r($result); ?>
정의와 사용법
array_intersect_uassoc() 함수는 두 개(또는 더 많은 개)의 배열의 키 이름과 키 값을 비교하고, 교집합을 반환합니다.
주의사항:이 함수는 사용자 정의 함수를 사용하여 키 이름을 비교합니다!
이 함수는 두 개(또는 더 많은 개)의 배열의 키 이름과 키 값을 비교하고, 비교된 배열에 포함된 모든 값이 포함된 교집합 배열을 반환합니다.array1중에서도 포함되며, 다른 모든 매개변수 배열(array2 또는 array3 그리고 다른) 키 이름과 키 값을 포함합니다.
설명
array_intersect_uassoc() 함수는 사용자 정의 콜백 함수를 사용하여 배열의 교집합을 계산하며, 인덱스를 비교합니다.
array_intersect_uassoc()는 모든 비교된 배열에 존재하는 모든 값이 포함된 배열을 반환합니다. array1 그리고 모든 다른 매개변수 배열에도 동시에 존재하는 값.
참고로 array_intersect()와 다른 점은 키 값뿐만 아니라 키 이름도 비교한다는 점입니다.
이 비교는 사용자가 제공한 콜백 함수를 통해 수행됩니다. 이 함수는 두 비교할 키 이름을 가진 두 개의 매개변수를 가집니다. 첫 번째 매개변수가 두 번째 매개변수보다 작으면 함수는 음수를 반환해야 하며, 두 매개변수가 같으면 0을 반환해야 하고, 첫 번째 매개변수가 두 번째 매개변수보다 크면 양수를 반환해야 합니다.
문법
array_intersect_uassoc(array1,array2,array3...myfunction)
매개변수 | 설명 |
---|---|
array1 | 필수. 다른 배열과 비교할 첫 번째 배열. |
array2 | 필수. 첫 번째 배열과 비교할 배열. |
array3,... | 선택 사항. 첫 번째 배열과 비교할 다른 배열. |
myfunction | 필수. 호출할 수 있는 비교 함수를 정의하는 문자열. |
기술 세부 사항
반환 값: | 교집합 배열을 반환합니다. 이 배열은 모든 비교된 배열(array1중에서도 포함되며, 다른 모든 매개변수 배열(array2 또는 array3 그리고 다른) 키 이름과 키 값을 포함합니다. |
PHP 버전: | 5+ |
더 많은 예제
예제 1
세 개의 배열의 키 이름과 키 값을 비교하여 (사용자 정의 함수를 사용하여 키 이름을 비교합니다) 교집합을 반환합니다:
<?php function myfunction($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } $a1=array("a"=>"red","b"=>"green","c"=>"blue"); $a2=array("a"=>"red","b"=>"green","d"=>"blue"); $a3=array("e"=>"yellow","a"=>"red","d"=>"blue"); $result=array_intersect_uassoc($a1,$a2,$a3,"myfunction"); print_r($result); ?>