array_intersect_key 함수
array_intersect_key 함수는 여러 배열을 받아 첫 번째 배열의 요소 중 키가 다른 모든 배열에도 존재하는 요소로 이루어진 새 배열을 반환합니다.
비교는 키에 대해서만 이루어지며 값은 고려되지 않습니다.
구문
array_intersect_key(array1, array2, array3, ...);
예제
두 배열의 키를 비교해 봅시다:
<?php
$arr1 = ['a' => 1, 'b' => 2, 'c' => 3];
$arr2 = ['a' => 4, 'c' => 5, 'd' => 6];
$res = array_intersect_key($arr1, $arr2);
print_r($res);
?>
코드 실행 결과:
['a' => 1, 'c' => 3]
예제
세 배열의 키를 비교해 봅시다:
<?php
$arr1 = [1 => 'a', 2 => 'b', 3 => 'c'];
$arr2 = [1 => 'd', 3 => 'e'];
$arr3 = [1 => 'f', 4 => 'g'];
$res = array_intersect_key($arr1, $arr2, $arr3);
print_r($res);
?>
코드 실행 결과:
[1 => 'a']
예제
다른 타입의 키를 가진 배열 비교:
<?php
$arr1 = ['1' => 'a', 2 => 'b'];
$arr2 = [1 => 'c', '2' => 'd'];
$res = array_intersect_key($arr1, $arr2);
print_r($res);
?>
코드 실행 결과:
['1' => 'a', 2 => 'b']
관련 항목
-
값을 비교하여 배열의 교집합을 구하는
array_intersect함수 -
키를 비교하여 배열의 차집합을 반환하는
array_diff_key함수 -
키와 값 모두를 비교하는
array_intersect_assoc함수