PHP 개발에서, 특히 사용자가 입력 한 데이터와 관련하여, 우리는 종종 사용자가 입력 한 주요 이름의 일관성이없는 경우에 종종 발생합니다. 예를 들어, 사용자가 입력 한 양식 데이터 또는 URL 매개 변수의 키 이름은 다른 사례 형식을 가질 수 있습니다. 현재 통합 된 사례 처리가 수행되지 않으면 일부 예기치 않은 오류가 발생할 수 있습니다.
PHP는 매우 편리한 기능 array_change_key_case () 를 제공하며 배열 키 이름의 케이스 형식을 변경하는 데 사용할 수 있습니다. 이 기능은 사용자 입력에서 사례 불일치를 처리하는 데 매우 적합합니다.
Array_change_key_case () 함수는 배열의 모든 키 이름을 지정된 상단 및 소문자로 변환하는 데 사용됩니다. 배열의 모든 키 이름을 소문자 또는 대문자로 변환하도록 선택할 수 있습니다.
array_change_key_case(array $array, int $case = CASE_LOWER): array
$ 배열 : 처리 할 배열.
$ CASE : 변환 된 케이스를 지정합니다. case_upper 또는 case_lower 일 수 있으며 기본값은 Case_Lower 이며 모든 키 이름이 소문자로 변환되었음을 나타냅니다.
사용자 입력에서 다음 양식 데이터를 수신한다고 가정하면 키 이름에 다른 사례 형식이있을 수 있습니다.
$userInput = [
'Name' => 'John',
'AGE' => 25,
'email' => 'john@example.com'
];
모든 키 이름을 소문자로 균일하게 변환하려면 array_change_key_case ()를 사용할 수 있습니다.
<?php
$userInput = [
'Name' => 'John',
'AGE' => 25,
'email' => 'john@example.com'
];
// 키 어레이 이름을 소문자로 변환합니다
$normalizedInput = array_change_key_case($userInput, CASE_LOWER);
print_r($normalizedInput);
?>
출력은 다음과 같습니다.
Array
(
[name] => John
[age] => 25
[email] => john@example.com
)
보시다시피, 모든 키 이름은 소문자로 변환되어 사례 불일치로 인한 문제를 피합니다.
때로는 URL의 매개 변수도 우리가 처리 해야하는 곳입니다. 예를 들어 URL은 다른 경우가있는 쿼리 매개 변수를 사용할 수 있으며 이러한 매개 변수의 사례 형식을 통합하려고합니다. URL이 다음과 같다고 가정합니다.
https://m66.net/profile?UserName=JohnDoe&Email=john@example.com&Age=30
parse_url () 및 parse_str ()를 사용하여 URL을 구문 분석하고 array_change_key_case () 를 통해 매개 변수의 상단 및 하부를 통합합니다.
<?php
$url = "https://m66.net/profile?UserName=JohnDoe&Email=john@example.com&Age=30";
// 분석URL
$parsedUrl = parse_url($url);
parse_str($parsedUrl['query'], $queryParams);
// 쿼리 매개 변수의 키 이름을 소문자로 변환
$normalizedParams = array_change_key_case($queryParams, CASE_LOWER);
print_r($normalizedParams);
?>
출력은 다음과 같습니다.
Array
(
[username] => JohnDoe
[email] => john@example.com
[age] => 30
)
이러한 방식으로 URL의 매개 변수 키 이름이 일치하지 않더라도 결국 원하는 형식으로 통합 될 수 있습니다.
Array_change_key_case ()는 배열을 처리 할 때 배열 키 이름의 경우를 통합하는 데 도움이되는 매우 유용한 기능입니다. 사용자 입력 또는 URL 매개 변수를 처리 할 때는 균일 한 경우가 매우 중요합니다. 사례 불일치로 인한 오류를 줄이고 데이터 처리의 일관성을 보장 할 수 있습니다. 이 기사의 예제를 사용하면 Array_change_key_case ()를 사용하여 실제 문제를 해결하는 방법을 더 잘 이해할 수 있기를 바랍니다.