라이브러리
[PHP] array_udiff_uassoc - 추가 인덱스 검사를 통해 배열의 차이를 계산하고 콜백 함수로 데이터와 인덱스를 비교합니다.
PHP의 array_udiff_uassoc 함수
PHP의 `array_udiff_uassoc` 함수는 두 개의 배열을 비교하고, 두 배열에 포함된 키-값 쌍이 다른 항목을 반환합니다. 이 함수는 `array_diff_uassoc` 함수와 유사하지만, 비교 함수를 사용하여 키-값 쌍을 비교합니다.
함수 형식
`array_udiff_uassoc` 함수의 형식은 다음과 같습니다.
#hostingforum.kr
php
array_udiff_uassoc(array $array1, array $array2, callable $key_func1, callable $key_func2, callable $data_func)
- `$array1`과 `$array2`: 두 개의 배열을 비교할 배열입니다.
- `$key_func1`과 `$key_func2`: 각 배열의 키-값 쌍을 비교할 함수입니다. 이 함수는 두 개의 매개변수를 받습니다: 키와 값.
- `$data_func`: 두 배열의 키-값 쌍을 비교할 함수입니다. 이 함수는 두 개의 매개변수를 받습니다: 키와 값.
예제
다음 예제는 두 개의 배열을 비교하고, 두 배열에 포함된 키-값 쌍이 다른 항목을 반환합니다.
#hostingforum.kr
php
// 두 개의 배열
$array1 = [
['name' => 'John', 'age' => 25],
['name' => 'Jane', 'age' => 30],
['name' => 'Bob', 'age' => 35]
];
$array2 = [
['name' => 'John', 'age' => 25],
['name' => 'Jane', 'age' => 30],
['name' => 'Alice', 'age' => 40]
];
// 비교 함수
function key_func($key1, $key2) {
return $key1['name'] <=> $key2['name'];
}
function data_func($data1, $data2) {
return $data1['age'] <=> $data2['age'];
}
// array_udiff_uassoc 함수를 사용하여 두 배열을 비교
$result = array_udiff_uassoc($array1, $array2, 'key_func', 'data_func');
// 결과를 출력
print_r($result);
이 예제에서, `key_func` 함수는 두 개의 키-값 쌍을 비교하고, `data_func` 함수는 두 개의 키-값 쌍을 비교합니다. `array_udiff_uassoc` 함수는 두 배열에 포함된 키-값 쌍이 다른 항목을 반환합니다.
결과
결과는 다음과 같습니다.
#hostingforum.kr
php
Array
(
[0] => Array
(
[name] => Bob
[age] => 35
)
)
이 예제에서, 두 배열의 키-값 쌍이 다른 항목은 `'Bob'`이름의 항목입니다. 이 항목은 `$array1`에만 포함되어 있습니다.
요약
`array_udiff_uassoc` 함수는 두 개의 배열을 비교하고, 두 배열에 포함된 키-값 쌍이 다른 항목을 반환합니다. 이 함수는 비교 함수를 사용하여 키-값 쌍을 비교합니다. 예제를 포함하여 이 함수의 사용법을 설명했습니다.
댓글목록
등록된 댓글이 없습니다.