> 백엔드 개발 > PHP 튜토리얼 > PHP 배열 함수의 array_diff_key() 사용법에 대한 자세한 설명

PHP 배열 함수의 array_diff_key() 사용법에 대한 자세한 설명

王林
풀어 주다: 2023-06-27 20:14:01
원래의
905명이 탐색했습니다.

PHP는 널리 사용되는 프로그래밍 언어이며 배열 기능도 매우 강력합니다. 두 배열의 키 이름을 비교해야 할 경우 array_diff_key() 함수를 사용할 수 있습니다. 이 함수는 첫 번째 배열에는 있지만 두 번째 배열에는 존재하지 않는 키 이름을 찾고 배열 간의 차이점을 비교하는 데 도움이 될 수 있습니다. 이번 글에서는 array_diff_key() 함수의 사용법을 자세히 소개하겠습니다.

array_diff_key() 함수

array_diff_key() 함수 구문의 기본 사용법은 다음과 같습니다.

array array_diff_key ( array $array1 , array $array2 [, array $... ] )
로그인 후 복사

이 함수는 여러 배열을 매개변수로 받습니다. 여기서 첫 번째 매개변수는 원래 배열이고 후속 매개변수는 비교할 배열입니다. 이 함수는 첫 번째 배열에는 존재하지만 다른 배열에는 존재하지 않는 키에 해당하는 새 배열을 반환합니다.

예를 들어 두 개의 배열이 있습니다.

$array1 = array('name' => 'Peter', 'age' => 20, 'address' => 'Shanghai');
$array2 = array('name' => 'Mike', 'sex' => 'male', 'address' => 'Beijing');
로그인 후 복사

다음 코드를 사용하여 이 두 배열을 비교할 수 있습니다.

$result = array_diff_key($array1, $array2);
print_r($result);
로그인 후 복사

출력은 다음과 같습니다.

Array ( [age] => 20 )
로그인 후 복사
로그인 후 복사

결과에서 볼 수 있듯이 다음 위치에서 새 배열을 얻습니다. 'age'는 $array1에만 존재하고 $array2에는 존재하지 않기 때문에 키 이름이 'age'인 요소만 포함합니다.

Notes

array_diff_key() 함수는 키 값이 아닌 배열의 키 이름만 비교한다는 점에 유의해야 합니다. 따라서 두 배열의 일부 키가 동일한 키 값에 해당하더라도 함수는 이를 여전히 차이점으로 나열합니다.

array_diff_key() 함수는 여러 배열 간의 차이점 비교도 지원합니다. 예를 들어 세 개의 배열이 있습니다.

$array1 = array('name' => 'Peter', 'age' => 20, 'address' => 'Shanghai');
$array2 = array('name' => 'Mike', 'sex' => 'male', 'address' => 'Beijing');
$array3 = array('name' => 'Lucas', 'age' => 22, 'hobby' => 'swimming');
로그인 후 복사

다음 코드를 사용하여 이 세 개의 배열을 비교할 수 있습니다.

$result = array_diff_key($array1, $array2, $array3);
print_r($result);
로그인 후 복사

출력은 다음과 같습니다.

Array ( [age] => 20 )
로그인 후 복사
로그인 후 복사

결과에서 볼 수 있듯이 다음 항목만 포함하는 새 배열을 얻습니다. 키 이름은 'age'의 요소입니다. 이는 'age'가 $array1에만 존재하고 다른 두 배열에는 존재하지 않기 때문입니다.

결론

array_diff_key() 함수는 두 개 이상의 배열 사이의 차이점을 빠르게 찾는 데 도움이 되는 매우 유용한 PHP 배열 함수입니다. 이 함수를 사용할 때 키 값이 아닌 배열의 키 이름만 비교한다는 점에 유의해야 합니다.

위 내용은 PHP 배열 함수의 array_diff_key() 사용법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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