현재 위치: > 최신 기사 목록> Array_change_key_case ()가 원래 배열에 부작용이 있습니까?

Array_change_key_case ()가 원래 배열에 부작용이 있습니까?

M66 2025-04-24

php에서 array_change_key_case () 는 매우 실용적인 기능입니다. 그 기능은 배열에서 모든 키 이름의 상단과 소문자를 균일하게 변환하는 것입니다. 기본값은 소문자로 변환하는 것입니다. 이 기능은 종종 다른 소스에서 데이터를 처리 할 때 키 이름 형식의 일관성을 보장하는 데 사용됩니다.

따라서 문제는 다음과 같습니다. Array_change_key_case를 사용하면 원래 배열을 수정합니까?

답 : 원래 배열은 수정되지 않습니다

Array_change_key_case ()비파괴적인 함수 이므로 원래 배열을 직접 수정하지는 않지만 상단 및 소문자 및 소문자가 변환 된 키 이름을 가진 새 배열을 반환합니다. 수정 된 결과를 유지하려면 변수에 할당해야합니다.

샘플 코드

 <?php
$original = [
    "Name" => "Alice",
    "AGE" => 25,
    "Email" => "alice@m66.net"
];

// 사용 array_change_key_case 원래 배열은 수정되지 않습니다
$changed = array_change_key_case($original, CASE_LOWER);

print_r($original);
echo "--------\n";
print_r($changed);
?>

출력 결과 :

 Array
(
    [Name] => Alice
    [AGE] => 25
    [Email] => alice@vv99.net
)
--------
Array
(
    [name] => Alice
    [age] => 25
    [email] => alice@vv99.net
)

보시다시피, $ 원본 배열은 변경되지 않은 상태로 유지되며 $ 변경은 새로운 배열이며 키 이름은 소문자로 변환되었습니다.

매개 변수 설명

 array_change_key_case(array $array, int $case = CASE_LOWER): array
  • $ 배열 : 처리 할 입력 배열.

  • $ CASE : 선택 사항, 변환 유형을 지정합니다.

    • Case_Lower (기본값) : 소문자로 변환합니다.

    • Case_UPPER : 대문자로 변환합니다.

주목해야 할 것

  • 이 기능은 1 차원 배열 에서만 작동하며 다차원 배열의 주요 이름을 재귀 적으로 처리하지 않습니다.

  • 변환 된 키 이름의 중복이 있으면 값이 덮어 씁니다. 예를 들어, [ "a"=> 1, "a"=> 2]는 소문자로 변환 한 후 [ "a"=> 2] 가됩니다.

요약

Array_change_key_case ()는 배열 키 이름의 경우를 처리하기위한 편리한 도구입니다. 원래 배열을 수정하지는 않지만 새 배열을 반환합니다. 기억하십시오 : 반환 값을 사용할 때 반환 값을 잡으 십시오. 그렇지 않으면 변환이 의미가 없습니다.

이 기사가 array_change_key_case () 의 사용법과 특성을 더 명확하게 이해하는 데 도움이되기를 바랍니다.