萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 程式設計 >  >> 網路程式設計 >> PHP 程式設計

PHP array_change_key_case() 函數詳解:陣列鍵名大小寫轉換

函數用途

array_change_key_case() 回傳一個新陣列,將原陣列所有鍵名統一轉為小寫或大寫。僅影響鍵名,值保持不變。

語法與參數

array_change_key_case(array $array, int $case = CASE_LOWER): array
參數說明
$array必填,目標陣列
$case選填,CASE_LOWER(預設,轉小寫)或 CASE_UPPER(轉大寫)

實戰範例

範例 1:轉大寫

<?php
$a = ["a" => "Cat", "b" => "Dog", "c" => "Horse"];
print_r(array_change_key_case($a, CASE_UPPER));
/*
Array
(
    [A] => Cat
    [B] => Dog
    [C] => Horse
)
*/
?>

範例 2:鍵名衝突處理(後者覆蓋前者)

<?php
$a = ["a" => "Cat", "b" => "Dog", "c" => "Horse", "B" => "Bird"];
print_r(array_change_key_case($a, CASE_UPPER));
/*
Array
(
    [A] => Cat
    [B] => Bird  // 原 "b" => "Dog" 被 "B" => "Bird" 覆蓋
    [C] => Horse
)
*/
?>

注意事項

  • 若轉換後出現重複鍵名,後出現的元素會覆蓋先前的元素,不會產生錯誤。
  • 僅適用於字串鍵名;數值索引陣列不受影響。
  • 原陣列不會被修改,函數回傳新陣列。

適用場景

  • 正規化來自不同來源(如 HTTP 標頭、設定檔)的陣列鍵名大小寫。
  • 不區分大小寫的鍵名查找前處理。
copyright © 萬盛學電腦網 all rights reserved