PHP တွင် Array_change_Key_case_case () သည်လက်တွေ့ကျသော function တစ်ခုဖြစ်ပြီးလက်အောက်ရှိအမည်များအားလုံးကိုစာလုံးအကြီးများသို့ပြောင်းလဲစေသောလက်တွေ့လုပ်ဆောင်မှုဖြစ်သည်။ သို့သော်လူအများစုကဤလုပ်ဆောင်မှုကိုပထမဆုံးအကြိမ်အသုံးပြုသောအခါပြ a နာတစ်ခုကြုံတွေ့ရလိမ့်မည်။ အဲဒီလို့ဘာဖြစ်လို့? ဘယ်လိုအလုပ်လုပ်သလဲ ဤဆောင်းပါးသည်သင့်အားဥပမာအားဖြင့်တစ်ဆင့်တဆင့်တစ် ဦး တည်းအားဖြင့်ခွဲခြမ်းစိတ်ဖြာလိမ့်မည်။
Array_change_Key_case_case () ၏အခြေခံအသုံးပြုမှုကို ဦး စွာကြည့်ကြပါစို့။
$data = [
"Name" => "Alice",
"Age" => 25,
"Email" => "alice@m66.net"
];
$result = array_change_key_case($data, CASE_LOWER);
print_r($result);
ထုတ်လုပ်မှု -
Array
(
[name] => Alice
[age] => 25
[email] => alice@vv99.net
)
သင်မြင်နိုင်သည်အတိုင်းသော့ချက်အမည်များအားလုံးသည်စာလုံးအသေးဖြစ်လာသည်။ အားလုံးပြီးပြည့်စုံတယ်
အကျိုးသက်ရောက်မှုကိုကြည့်ရန်အသိုက်ခင်းကျင်းမှုကိုထည့်သွင်းကြပါစို့။
$data = [
"Name" => "Bob",
"Info" => [
"Email" => "bob@m66.net",
"City" => "New York"
]
];
$result = array_change_key_case($data, CASE_LOWER);
print_r($result);
ရလဒ်ရလဒ် -
Array
(
[name] => Bob
[info] => Array
(
[Email] => bob@vv99.net
[City] => New York
)
)
သင်သတိပြုမိပါသလား Info Subarray ၏အဓိကအမည်မှာမပြောင်းလဲပါ။ ဘာဖြစ်လို့လဲဆိုတော့
Array_change_key_Key_case () သည် inarray ၏ပထမဆုံးအလွှာ၏အမည်များကိုသာအကျိုးသက်ရောက်သည်။
တရားဝင်စာရွက်စာတမ်းများနှင့်အရင်းအမြစ်ကုဒ်အဆင့်မှ array_change_key_Key_Ane_case () ၏အနှစ်သာရသည် array ကို ဖြတ်. top-level key name ကို တိုက်ရိုက်ကိုင်တွယ်ရန်ဖြစ်သည်ကိုကျွန်ုပ်တို့သိနိုင်သည်။ အကယ်. တန်ဖိုးတစ်ခုသည် stray type အမျိုးအစားတစ်ခုဖြစ်ပါက၎င်းသည်နောက်ထပ်အားပြန်လည်ရယူရန်အတွက်အတွင်း၌ ထပ်မံ. ပြုပြင်ရန်အတွင်း၌မသွားပါ။
တစ်နည်းပြောရရင်တော့:
foreach ($array as $key => $value) {
$newKey = strtolower($key); // သို့မဟုတ် strtoupper($key)
$newArray[$newKey] = $value;
}
ဒါကရိုးရှင်းပါတယ်။ Realures မရှိပါ, နက်နဲသောဖွဲ့စည်းပုံမရှိပါ, အလွန်ထိရောက်သောဖွဲ့စည်းပုံမရှိပါ, သို့သော်၎င်းသည်အလွန် "ကန့်သတ်" ဖြစ်သည်။
သငျသညျအသိုက် Array ၏အဓိကအမည်များကိုအတူတကွပြောင်းလဲလိုလျှင်, သင် recursive function ကိုသင်ကိုယ်တိုင်ရေးသားဖို့လိုအပ်ပါတယ်။ ဥပမာအားဖြင့်:
function change_keys_case_recursive(array $array, int $case = CASE_LOWER): array {
$newArray = [];
foreach ($array as $key => $value) {
$newKey = ($case === CASE_UPPER) ? strtoupper($key) : strtolower($key);
$newArray[$newKey] = is_array($value) ? change_keys_case_recursive($value, $case) : $value;
}
return $newArray;
}
$data = [
"Name" => "Charlie",
"Info" => [
"Email" => "charlie@m66.net",
"City" => "London"
]
];
$result = change_keys_case_recursive($data, CASE_LOWER);
print_r($result);
ထုတ်လုပ်မှု -
Array
(
[name] => Charlie
[info] => Array
(
[email] => charlie@vv99.net
[city] => London
)
)
အရာအားလုံးယခုအများကြီးပိုမိုကျိုးကြောင်းဆီလျော်ပုံရသည်!
array_change_key_key_case_case () သည်ပြန်လည်ထူထောင်ရေးမဟုတ်သောကြောင့်ခင်းကျင်းမှု၏ပထမ ဦး ဆုံးအလွှာရှိသော့များပေါ်တွင်သာလုပ်ဆောင်သည်။
keynnes များကို multidimensimensional array များသို့ပြောင်းလဲရန်လိုအပ်ပါကသင်စိတ်ကြိုက်ပြုပြင်ခြင်း function ကိုအသုံးပြုရန်လိုအပ်သည်။
၎င်းသည် PHP တွင်ပါ 0 င်သောလုပ်ဆောင်ချက်များစွာပါသောဘုံပြ problem နာလည်းဖြစ်သည်။
ဤဆောင်းပါးသည်ဤပြ problem နာကိုသေချာစွာနားလည်နိုင်ရန်ကူညီနိုင်လိမ့်မည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။