현재 위치: > 최신 기사 목록> 그래픽 방식으로 Array_Diff_Assoc ()의 차이 원칙을 설명하십시오

그래픽 방식으로 Array_Diff_Assoc ()의 차이 원칙을 설명하십시오

M66 2025-06-06

Array_Diff_Assoc () 는 PHP에서 두 배열을 비교하여 첫 번째 배열에 있지만 두 번째 배열에는 있지 않은 키 값 쌍을 반환하는 매우 유용한 기능입니다. 구체적으로, 그것은 배열의 값뿐만 아니라 배열의 키를 비교합니다. 이러한 방식으로 array_diff_assoc () 함수는 키 이름과 키 값 사이의 대응을 고려하기 때문에 array_diff () 보다 정확합니다.

이 기사에서는 그래픽 메소드를 사용하여 array_diff_assoc () 함수의 작동 방식을 더 잘 이해할 수 있도록 도와줍니다. 간단한 예에서 시작 하여이 기능의 동작을 단계별로 설명해 봅시다.

기본 사용

기능 프로토 타입 :

 array_diff_assoc(array $array1, array $array2): array

샘플 코드 :

 <?php
$array1 = [
    "a" => 1,
    "b" => 2,
    "c" => 3
];

$array2 = [
    "a" => 1,
    "b" => 4,
    "d" => 5
];

$result = array_diff_assoc($array1, $array2);
print_r($result);
?>

결과:

 Array
(
    [b] => 2
    [c] => 3
)

분석

이 예에서 Array_Diff_Assoc ()는 array1array2를 비교합니다. 단계별로 작동하는 방식을 분석합시다.

  1. A :

    • Array1Array2 의 키 A 의 값은 모두 1 이므로이 키 값 쌍 사이에는 차이가 없습니다.

  2. B :

    • Array1 에서 키 B 의 값은 2 이고, Array2 에서는 키 B 의 값은 4 입니다. 키 값이 일관되지 않기 때문에 B => 2는 Array1 에 고유 한 키 값 쌍으로 간주되며 결과에 나타납니다.

  3. C :

    • Array1 에서 키 C 의 값은 3 이고 Array2 에는 가 없습니다. 따라서 C => 3 은 또한 Array1 에 고유 한 키 값 쌍으로 간주되며 결과에 나타납니다.

따라서 Array_diff_assoc ()는 b => 2c => 3을 포함하는 배열을 반환합니다.

그래픽 수단을 통해 차이의 원리를 이해합니다

array_diff_assoc () 의 작동 원리를보다 직관적으로 이해하기 위해 그림을 통해 두 배열의 비교 과정을 보여줄 수 있습니다.

그림 : 비교 과정

두 개의 배열이 있다고 가정합니다.

  • Array1 : [ "a"=> 1, "b"=> 2, "c"=> 3]

  • Array2 : [ "a"=> 1, "b"=> 4, "d"=> 5]

다음 다이어그램을 통해 차이점을 명확하게 볼 수 있습니다.

 array1:  [ "a" => 1, "b" => 2, "c" => 3 ]
                      ↑            ↑
array2:  [ "a" => 1, "b" => 4, "d" => 5 ]
                      ↑
  • A : 동일 (키 및 값 일치 모두)이므로 결과가 아닙니다.

  • B : 키는 동일하지만 값은 다릅니다. 차이는 Array1 에 고유 한 것으로 간주되므로 결과에 나타납니다.

  • C : Array2 에는 키 C 가 없습니다. C => 3은 Array1 에 고유 한 것으로 간주되므로 결과에도 나타납니다.

그림 결과 :

 Result: [ "b" => 2, "c" => 3 ]

자세히 알아보십시오

키 값 일치의 중요성

Array_Diff_Assoc ()는 배열을 값별로 비교할뿐만 아니라 키 일치도 고려합니다. 두 배열에 동일한 키가 있지만 다른 값이있는 경우 Array_Diff_Assoc () 는 차이로 취급합니다.

키가 전혀 존재하지 않는 경우

Array2 에 전혀 키가 없으면 (예 : C 와 같은) 키 값 쌍은 Array1 에 고유 한 것으로 간주되며 결과 배열에도 나타납니다.

일반적인 응용 프로그램 시나리오

  1. 데이터 필터링 차이 : 배열 데이터를 처리 할 때 Array_Diff_Assoc ()를 사용하여 다른 배열의 차이점, 특히 두 배열의 키와 값이 정확히 일치 해야하는 경우 다른 배열의 차이를 찾을 수 있습니다.

  2. 구성 배열 처리 : 두 개의 구성 배열을 비교하고 구성 항목이 다른지 확인 해야하는 경우 Array_Diff_Assoc () 가 매우 좋습니다.

  3. 데이터 중복 제거 : 두 개의 데이터 세트가 있으면 데이터 세트의 고유 한 부분을 찾으려면 Array_Diff_Assoc ()를 사용하여 달성 할 수 있습니다.

요약

Array_Diff_Assoc () 는 PHP에서 매우 실용적인 기능으로 두 배열의 키 값 쌍의 차이를 비교하고 차동 키 값 쌍이 포함 된 배열을 반환합니다. Array1Array2 의 예를 비교함으로써, 우리는 키와 값을 동시에 비교하여 차이를 판단하는 방법을 이해합니다.

궁금한 점이 있거나 PHP의 다른 배열 조작 기능에 대해 더 깊이 이해하고 싶다면 언제든지 나와 논의하십시오!