PHP 배열 작업에서 키 이름의 경우가 때때로 데이터의 처리 결과에 영향을 미칩니다. 배열 키 이름의 형식을 통합하기 위해 PHP는 매우 실용적인 기능을 제공합니다 : Array_change_key_case () . 이 기능은 배열의 모든 키 이름을 대문자 또는 소문자로 변환 할 수 있으며, 특히 데이터 청소, 표준화 및 기타 시나리오에 적합합니다.
array_change_key_case(array $array, int $case = CASE_LOWER): array
$ 배열 : 필수. 처리 할 입력 배열.
$ CASE : 선택 사항. 변환의 사례 유형. 기본값은 Case_Lower (소문자로 변환) 또는 Case_Upper (대문자로 변환)입니다.
다음은 Array_change_key_case ()를 사용하여 배열 키 이름을 소문자 및 대문자로 변환하는 방법을 보여주는 간단한 예입니다.
<?php
$data = [
"Name" => "Alice",
"EMAIL" => "alice@m66.net",
"Age" => 25
];
// 소문자 키 이름으로 변환하십시오
$lowercaseKeys = array_change_key_case($data, CASE_LOWER);
print_r($lowercaseKeys);
/* 산출:
Array
(
[name] => Alice
[email] => alice@vv99.net
[age] => 25
)
*/
// 자본 키 이름으로 변환하십시오
$uppercaseKeys = array_change_key_case($data, CASE_UPPER);
print_r($uppercaseKeys);
/* 산출:
Array
(
[NAME] => Alice
[EMAIL] => alice@vv99.net
[AGE] => 25
)
*/
?>
키 값은 변경되지 않습니다 . array_change_key_case ()는 키 이름의 경우 만 변경하고 배열 값에 영향을 미치지 않습니다.
키 이름 충돌 : 변환 후 중복 키 이름이 생성되면 (예 : "이메일"및 "이메일"이 존재하는 경우) 다음 키는 이전 키를 덮어 씁니다.
문자열 키 이름에만 적용 가능 : 숫자 키 이름은 영향을받지 않습니다.
API에서 사용자 데이터를 받고 반환 된 결과의 주요 이름이 일치하지 않는 형식이라고 가정합니다.
$response = [
"User_ID" => 101,
"user_name" => "Bob",
"EMAIL" => "bob@m66.net"
];
쉽게 처리하려면 소문자에 통합 키 이름이 필요할 수 있습니다.
$cleanedResponse = array_change_key_case($response, CASE_LOWER);
통합 된 키 이름은 데이터를 처리 할 때, 특히 Array_key_Exists () 및 isset () 와 같은 함수를 사용할 때 오류 가능성을 줄일 수 있습니다.