현재 위치: > 최신 기사 목록> array_intersect_key ()와 함께 Array_change_key_case ()를 사용하는 방법?

array_intersect_key ()와 함께 Array_change_key_case ()를 사용하는 방법?

M66 2025-04-24

PHP 개발에서 우리는 종종 배열의 주요 이름 케이스 문제와 여러 배열에서 교차로 키를 추출하는 작업을 다루고 있습니다. Array_change_key_case ()array_intersect_key () 는 매우 실용적인 배열 함수입니다. 함께 사용하면보다 유연한 데이터 필터링 및 비교를 달성 할 수 있습니다.

이 기사에서는 Array_intersect_key () 와 함께 Array_change_key_case ()를 효과적으로 사용하고 사용법을 설명하기 위해 실용적인 예제를 사용하는 방법을 설명합니다.

기능 소개

Array_change_key_case ()

Array_change_key_case ()는 배열의 모든 키 이름을 대문자 또는 소문자로 변환하는 데 사용됩니다.

문법:

 array_change_key_case(array $array, int $case = CASE_LOWER): array

매개 변수 $ CASE는 선택 사항이며 기본값은 Case_Lower (소문자)이거나 Case_Upper (대문자)로 설정할 수 있습니다.

array_intersect_key ()

Array_intersect_key ()는 첫 번째 배열에 키 이름이있는 두 개의 (또는 그 이상) 배열 및 리턴 값의 키 이름을 비교하는 데 사용됩니다.

문법:

 array_intersect_key(array $array1, array ...$arrays): array

실제 예

두 개의 배열이 있다고 가정합니다. 하나는 사용자가 제출 한 양식 데이터이고 다른 하나는 처리 할 수있는 필드 목록입니다. 우리는 양식 데이터에서 관심있는 필드를 추출하고 사례 차이를 무시하고 싶습니다.

 <?php
// 사용자가 제출 한 데이터,가능한 주요 이름은 경우에 일치하지 않습니다
$formData = [
    'Name' => 'Alice',
    'EMAIL' => 'alice@m66.net',
    'Age' => 30,
    'Location' => 'Beijing'
];

// 허용 된 필드(소문자로 통일)
$allowedFields = [
    'name' => true,
    'email' => true
];

// 사용자 데이터 키 이름을 소문자로 변환합니다
$normalizedFormData = array_change_key_case($formData, CASE_LOWER);

// 교차로 키 필드를 얻으십시오
$filteredData = array_intersect_key($normalizedFormData, $allowedFields);

// 출력 결과
print_r($filteredData);
?>

출력 결과 :

 Array
(
    [name] => Alice
    [email] => alice@vv99.net
)

응용 프로그램 시나리오

이 조합은 API 요청, 양식 검증 또는 사용자 입력 청소를 처리 할 때 유용합니다. 예를 들어, 편안한 인터페이스를 구축 할 때, 우리는 종종 필드 이름이 케이스에 민감하지 않으며 명시 적으로 허용하는 필드 만 허용하기를 원합니다.

요약

먼저 array_change_key_case ()를 사용하여 키 이름의 경우를 통합 한 다음 Array_Intersect_key ()를 사용하여 필요한 필드를 필터링하면 배열 데이터의보다 정확하고 결함이 강한 처리를 수행 할 수 있습니다. 이 조합은 논리가 간단하며 실용성이 강하며 PHP 개발에서 매우 권장되는 모델입니다.

현장 일치 또는 데이터 청소를 다루는 데 어려움이있는 경우이 조합을 시도하여 코드를보다 간결하고 강력하게 만들 수 있습니다.