လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> array_change_key_key_case () နှင့် array_walk_Recursive () multi- ရှုထောင်ခင်းကျင်းရန်

array_change_key_key_case () နှင့် array_walk_Recursive () multi- ရှုထောင်ခင်းကျင်းရန်

M66 2025-04-24

PHP Array အချက်အလက်များ, ဤအခြေအနေသည်တိုးပွားလာခြင်း, ရှာဖွေခြင်းသို့မဟုတ်မြေပုံရေးဆွဲခြင်း, ကံကောင်းထောက်မစွာပင် PHP သည် array_change_key_key_Key_case () နှင့် array_walk_Recursive () နှင့် array_walk_Recursive () နှင့် array_walk_Recursive () ကဲ့သို့သောအသုံးဝင်သောလုပ်ငန်းဆောင်တာများကိုထောက်ပံ့ပေးသည်။

သို့သော်ပြနာမှာ array_change_key_Key_case () သည် ရှုထောင့်များ တပ်ဆင်ခြင်း () သည် multidusalayal array ၏တန်ဖိုးများကိုဖြတ်သန်းနိုင်သော်လည်းသော့ချက်အမည်ကိုတိုက်ရိုက်မပြုပြင်နိုင်ပါ။ ဒါကြောင့်ဒီလုပ်ဆောင်ချက်နှစ်ခုကို ပေါင်းသင်းတဲ့အရာတွေရဲ့အရေးအကြီးဆုံးအမှုအရာတွေကိုအထောက်အကူပြုတဲ့အဖြေမှန်ကို အထောက်အကူပြုတဲ့အဖြေမှန်တစ်ခုကိုအကောင်အထည်ဖော်ဖို့ဒီလုပ်ဆောင်ချက်နှစ်ခုကိုပေါင်းစပ်လို့ရမလား။

အဖြေမှာ - ဟုတ်ကဲ့! array အလွှာတစ်ခုစီကိုထိုးဖောက်ဝင်ရောက်နိုင်ပြီး array_change_key_Key_case () ကို သုံးနိုင်ပါတယ်။

နမူနာကုဒ် - ယူနီဖောင်းသော့အမည်မှာစာလုံးအသေးဖြစ်သည်

 <?php

function change_array_keys_case_recursive(array $arr, int $case = CASE_LOWER): array {
    $result = [];

    foreach ($arr as $key => $value) {
        $newKey = ($case === CASE_LOWER) ? strtolower($key) : strtoupper($key);

        if (is_array($value)) {
            $result[$newKey] = change_array_keys_case_recursive($value, $case);
        } else {
            $result[$newKey] = $value;
        }
    }

    return $result;
}

// ဥပမာခင်းကျင်းခြင်း(စာလုံးအကြီးနှင့်ရောနှောနေသောသော့များပါရှိသည်)
$data = [
    'UserName' => 'alice',
    'Email' => 'alice@m66.net',
    'Details' => [
        'Age' => 28,
        'Country' => 'Canada',
        'Preferences' => [
            'Theme' => 'Dark',
            'LANGUAGE' => 'EN'
        ]
    ]
];

// စာလုံးအသေးအားလုံးအားလုံးကို unify
$normalized = change_array_keys_case_recursive($data);

print_r($normalized);
?>

ရလဒ်ရလဒ် -

 Array
(
    [username] => alice
    [email] => alice@m66.net
    [details] => Array
        (
            [age] => 28
            [country] => Canada
            [preferences] => Array
                (
                    [theme] => Dark
                    [language] => EN
                )
        )
)

စိတ်ကူးများကိုခွဲခြမ်းစိတ်ဖြာခြင်း

  • array_change_key_key_case_case () သည် Key Name Cothing ပြောင်းလဲခြင်းအတွက် PHP ပိုင်ကိရိယာတစ်ခုဖြစ်သည်,

  • Array_walk_Recursive () တန်ဖိုးများကိုခင်းကျင်းမှုတစ်ခုအတွင်းပြုပြင်ခြင်း (သို့သော်သော့မဟုတ်) သည်ဤနေရာတွင်မသင့်တော်ပါ။

  • စိတ်ကြိုက်ပြန်လည်ပြုပြင်ခြင်းလုပ်ဆောင်ချက်များ သည်လက်ရှိအကောင်းဆုံးသောဖြေရှင်းနည်းများဖြစ်ပြီး,

  • အားကောင်းသောအချည်းနှီးသက်သက်မျှမှု - အမှုဖွင့်ခြင်းအတွက် Case_upper ပြောင်းလဲခြင်းကိုပံ့ပိုးရန်ဝင်လာသော $ အမှု parameter ကိုပြုပြင်ပါ။

ကောက်ချက်

PHP မှပေးသောလုပ်ဆောင်ချက်များသည်၎င်းတို့၏ကိုယ်ပိုင်ကန့် သတ် ချက်များရှိသည်, ပြင်ပ input ကိုသို့မဟုတ်သန့်ရှင်းရေးဒေတာများကိုတူညီသောလုပ်ငန်းစဉ်တွင်ပြုလုပ်ရန်လိုအပ်သည့်ဖြစ်ရပ်များအတွက်ဤနည်းသည်လက်တွေ့မကျရုံသာမကစာဖတ်နိုင်မှုနှင့်ထိန်းသိမ်းမှုလည်းရှိသည်။

အကယ်. သင်သည်ရှုပ်ထွေးသော interface အချက်အလက်များကိုရှာဖွေနေပါကသို့မဟုတ်ဖွံ့ဖြိုးတိုးတက်စဉ်အတွင်းရှေ့နောက်မညီသောအမည်များကိုမကြာခဏကြုံတွေ့ရပါက,