array_count_values
array_diff_key
배열 함수 목록
PHP Manual

# array_diff_assoc

(PHP 4 >= 4.3.0, PHP 5)

array_diff_assoc — 추가적인 인덱스 확인과 함께 배열 차이를 계산

### 설명

array array_diff_assoc ( array `$array1` , array `$array2` [, array `$...` ] )

`array1` 를 `array2` 에 비교하고 차이를 반환합니다. array_diff()와 달리 배열 키를 비교에 사용합니다.

### 인수

`array1`

  비교할 원본 배열

`array2`

  비교할 대상 배열

`...`

  추가 대상 배열

### 반환값

다른 배열에 존재하지 않는 `array1` 의 모든 값을 가지는 array를 반환합니다.

### 예제

Example #1 array_diff_assoc() 예제

이 예제에서 "a" => "green" 쌍이 두 배열에 모두 존재하므로 함수에서 출력하지 않습니다. 이와 달리, 0 =>> "red" 쌍은 출력하는데, 두번째 인수의 "red"는 키가 1이기 때문입니다.

`<?php
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>`

위 예제의 출력:

    Array
    (
        [b] => brown
        [c] => blue
        [0] => red
    )

Example #2 array_diff_assoc() 예제

key => value 쌍에서 두 값은 (string) $elem1 === (string) $elem2 일 때만 동일하다고 간주합니다. 즉, 엄격한 확인을 하므로 문자열 표현이 동일해야 합니다.

`<?php
$array1 = array(0, 1, 2);
$array2 = array("00", "01", "2");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>`

위 예제의 출력:

    Array
    (
        [0] => 0
        [1] => 1
        )

### 주의

> Note: 이 함수는 n차원 배열의 1차원만 확인합니다. 물론, 깊은 차원은 array_diff_assoc($array1[0], $array2[0]);처럼 확인할 수 있습니다.

### 참고

- array_diff() - 배열 차이를 계산
- array_intersect() - 배열의 교집합을 계산
- array_intersect_assoc() - 인덱스 검사과 함께 배열의 교집합을 계산

array_count_values
array_diff_key
배열 함수 목록
PHP Manual