> 백엔드 개발 > PHP 튜토리얼 > 특정 키를 기반으로 연관 배열의 차이점을 효율적으로 찾는 방법은 무엇입니까?

특정 키를 기반으로 연관 배열의 차이점을 효율적으로 찾는 방법은 무엇입니까?

Barbara Streisand
풀어 주다: 2024-12-26 05:04:13
원래의
199명이 탐색했습니다.

How to Efficiently Find Differences in Associative Arrays Based on a Specific Key?

2차원 배열의 연관 값 차이 비교

프로그래밍에서는 두 배열을 비교하여 차이점만 추출해야 하는 경우가 많습니다. 배열에 연관 데이터가 포함된 경우, 특히 비교가 특정 키 값에 초점을 맞춰야 하는 경우 이 작업은 더욱 까다로워집니다.

연관 데이터 행이 있는 두 개의 배열을 고려해 보세요.

$array1 = array(
    array('ITEM' => 1),
    array('ITEM' => 2),
    array('ITEM' => 3),
);

$array2 = array(
    array('ITEM' => 2),
    array('ITEM' => 3),
    array('ITEM' => 1),
    array('ITEM' => 4),
);
로그인 후 복사

목표는 다음과 같습니다. 두 번째 배열을 필터링하여 첫 번째 배열에 있는 항목을 제외하되 구체적으로 'ITEM' 값을 비교합니다.

사용 사용자 정의 비교 함수를 사용하는 array_udiff

array_diff() 함수는 전체 행을 비교하므로 이 목적에는 충분하지 않습니다. 'ITEM' 값에만 집중하기 위해 array_udiff()에 대한 사용자 정의 비교 함수를 정의합니다.

function udiffCompare($a, $b)
{
    return $a['ITEM'] - $b['ITEM'];
}
로그인 후 복사

이 함수는 'ITEM' 값을 빼고 그 차이를 반환합니다.

이제 , array_udiff()에서 이 함수를 사용할 수 있습니다.

$arrdiff = array_udiff($arr2, $arr1, 'udiffCompare');
로그인 후 복사

$arrdiff 변수에는 원하는 값이 포함됩니다. 결과:

Array
(
    [3] => Array
        (
            [ITEM] => 4
        )
)
로그인 후 복사

이 접근 방식은 기존 배열 구조를 유지하고 비교를 위해 특정 'ITEM' 키 값에 중점을 둡니다.

위 내용은 특정 키를 기반으로 연관 배열의 차이점을 효율적으로 찾는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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