Array_diff_ukey () 는 PHP에 내장 된 배열 기능으로 둘 이상의 배열의 주요 이름을 비교하고 차이점을 반환합니다. 이 기능은 배열 값을 직접 비교하는 대신 사용자 정의 비교 함수를 기반으로 주요 이름을 비교합니다. 복잡한 배열 데이터를 다룰 때, 특히 키 이름으로 비교를 사용자 정의해야 할 때 매우 유용합니다.
이 기사는 array_diff_ukey () 함수의 기본 구문, 사용법 방법 및 일반적인 사용에 대해 자세히 소개합니다.
array_diff_ukey () 의 기본 구문은 다음과 같습니다.
array_diff_ukey(array $array1, array $array2, callable $key_compare_func): array
$ array1 : 이것은 비교할 첫 번째 배열입니다.
$ array2 : 이것은 비교할 두 번째 배열입니다.
$ key_compare_func : 이것은 두 배열의 키 이름의 크기를 비교하는 콜백 함수입니다. 이 함수는 두 개의 키 이름을 매개 변수로 수신하고 반환 값은 다음 규칙을 따라야합니다.
첫 번째 키 이름이 두 번째 키보다 작 으면 음의 값을 반환합니다.
두 개의 키 이름이 같으면 0을 반환합니다.
첫 번째 키 이름이 두 번째 키보다 큰 경우 양수 값을 반환합니다.
Array_diff_ukey ()는 $ array1 의 키 이름에 해당하는 모든 요소를 포함하는 배열을 반환하지만 $ array2 는 아닙니다.
간단한 예제를 사용하여 Array_diff_ukey ()를 사용하는 방법을 설명합시다.
<?php
$array1 = [
"a" => 1,
"b" => 2,
"c" => 3
];
$array2 = [
"b" => 4,
"c" => 5,
"d" => 6
];
function compare_keys($key1, $key2) {
return strcmp($key1, $key2);
}
$result = array_diff_ukey($array1, $array2, 'compare_keys');
print_r($result);
?>
Array
(
[a] => 1
)
이 예에서 Array_diff_ukey ()는 $ array1 및 $ array2 의 키 이름을 비교하고 Compare_keys 함수의 반환 값을 기반으로 $ array2 에 존재하지 않고 $ array1 에 어떤 키 이름이 있는지 결정합니다. 최종 반환 된 배열에는 $ array2 에 존재하지 않기 때문에 키 이름 A 만 있습니다.
한 배열이지만 다른 배열에 있지 않은 키 이름을 찾으십시오. 이것은 가장 일반적인 사용 시나리오입니다. Array_diff_ukey ()는 여러 배열이 있고 배열 중 하나에서 고유 한 키를 찾으려면 매우 유용합니다.
배열에서 기존 키를 필터링하십시오 배열이 크고 다른 배열에 이미 나타난 모든 키를 제거하려면이 기능을 사용하여 필터링 작업을 수행 할 수 있습니다.
사용자 정의 키 비교 함수 array_diff_ukey () 를 사용하면 사용자 정의 키 비교 함수를 제공하여 배열을 비교할 때보다 유연한 로직을 사용할 수 있습니다. 이것은 일부 복잡한 응용 프로그램 시나리오에 매우 유용합니다.
Array_diff_ukey ()는 키 이름 만 비교하고 배열의 값을 고려하지 않습니다.
배열의 키와 값을 동시에 비교하려면 Array_Diff_Assoc () 또는 Array_Diff ()를 사용할 수 있습니다.
이 기능은 키 이름을 비교하기 위해 유효한 콜백 함수를 제공해야합니다. 그렇지 않으면 오류가 발생합니다.
Array_diff_ukey () 는 PHP에서 매우 유용한 기능이며, 특히 주요 이름으로 복잡한 비교가 필요한 시나리오에 적합합니다. 유연한 콜백 기능을 사용하면 다양한 사용자 정의 키 이름 비교 로직을 쉽게 구현할 수 있습니다. 이 기사가 array_diff_ukey () 함수 사용 방법을 더 잘 이해하는 데 도움이되기를 바랍니다.