လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Array_change_key_Key_case_case () ၏အကျိုးသက်ရောက်မှုကို array_filter ()

Array_change_key_Key_case_case () ၏အကျိုးသက်ရောက်မှုကို array_filter ()

M66 2025-04-24

When processing arrays in PHP, two very practical functions are often used: array_change_key_case() and array_filter() . ဤရွေ့ကားနှစ်ခုလုပ်ဆောင်ချက်များကိုပေါင်းလဒ်အတွက်အသုံးပြုကြသည်။ developer များစွာသည်ဤလုပ်ဆောင်မှုနှစ်ခုကိုအသုံးပြုသောအခါဤလုပ်ဆောင်ချက်နှစ်ခုကိုအသုံးပြုသောအခါဤလုပ်ဆောင်ချက်နှစ်ခုကိုခေါ်ဆိုမှုအမိန့်သည်အရေးကြီးပါသလား။ နောက်ဆုံးအပြောင်းအလဲနဲ့ရလဒ်တွေကိုအကျိုးသက်ရောက်မလား။

ဤဆောင်းပါးသည်ဆန်းစစ်ခြင်းနှင့်ဥပမာများမှတဆင့်ဤမေးခွန်းကိုဖြေဆိုပါလိမ့်မည်။

တစ်ခု, နှစ်ခုလုပ်ဆောင်ချက်များကိုနိဒါန်း

1 ။ array_change_key_case ()

ဤလုပ်ဆောင်ချက်သည် အရေးပါသောအမည်များကို စာလုံးအကြီးများသို့မဟုတ်စာလုံးအကြီးအားလုံးကိုပြောင်းလဲရန်နှင့်အောက်ပါအတိုင်းအသုံးပြုသည်။

 array_change_key_case(array $array, int $case = CASE_LOWER): array
  • $ အစ်ကိုသည် case_ leower (default) သို့မဟုတ် case_upper ဖြစ်နိုင်သည်။

ဥပမာ -

 $arr = ['Name' => 'Tom', 'Age' => 25];
print_r(array_change_key_case($arr, CASE_LOWER));
// ထုတ်လုပ်ခြင်း:Array ( [name] => Tom [age] => 25 )

2 ။ array_filter ()

ဤလုပ်ဆောင်ချက်သည် Element များကိုခင်းကျင်းမှုတစ်ခုတွင် filter လုပ်ရန်အသုံးပြုသည်။

 array_filter(array $array, ?callable $callback = null, int $mode = 0): array

ပုံမှန်အားဖြင့်၎င်းသည် မှားယွင်းသော , ပုလင်း , 0 , အချည်းနှီးသောကြိုးများစသည်တို့ကဲ့သို့သော "မှားယွင်းသောတန်ဖိုးများ" နှင့်အတူဒြပ်စင်များကိုဖယ်ရှားသည်။

ဥပမာ -

 $arr = ['name' => 'Tom', 'age' => 0, 'email' => ''];
print_r(array_filter($arr));
// ထုတ်လုပ်ခြင်း:Array ( [name] => Tom )

2 ။ ကွဲပြားခြားနားသောအမိန့်, ရလဒ်များကွဲပြားခြားနားသောရလဒ်များရှိပါသလား

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

Case 1: array_change_key_key_case () ကို array_filter () ကိုခေါ်

ဤကိစ္စတွင်အဓိကအကြောင်းရင်းကိုပထမ ဦး ဆုံးပြောင်းလဲပြီးတန်ဖိုးကို filter လုပ်ထားသည်။

 $data = ['Name' => 'Tom', 'Age' => null, 'EMAIL' => ''];
$result = array_filter(array_change_key_case($data));
print_r($result);

ထုတ်လုပ်မှု -

 Array ( [name] => Tom )

ဥပမာ -

  • သော့များသည်စာလုံးအသေးများဖြစ်သည်။ နာမည် , အသက် , အီးမေးလ်

  • NULL နှင့်အချည်းနှီးသောကြိုးများကိုဖယ်ရှားသည်

Case 2: array_filter (), Array_change_Key_Key_case () ကိုခေါ်သည်

 $data = ['Name' => 'Tom', 'Age' => null, 'EMAIL' => ''];
$result = array_change_key_case(array_filter($data));
print_r($result);

ထုတ်လုပ်မှု -

 Array ( [name] => Tom )

output ဟာအတူတူပါပဲ။ ဒါပေမယ့် array_filter () ကို callback function ကိုသုံးတဲ့အခါခြားနားချက်ကထွက်လာလိမ့်မယ်။

ပိုပြီးရှုပ်ထွေးသောဥပမာများ -

 $data = ['Name' => 'Tom', 'Age' => 0, 'EMAIL' => 'tom@m66.net'];

$result1 = array_filter(array_change_key_case($data), function($val) {
    return !empty($val);
});

$result2 = array_change_key_case(array_filter($data, function($val) {
    return !empty($val);
}));

print_r($result1);
print_r($result2);

ထုတ်လုပ်မှု -

 $result1:
Array ( [name] => Tom [email] => tom@m66.net )

$result2:
Array ( [name] => Tom [email] => tom@m66.net )

ယခုအချိန်တွင်ရလဒ်များသည်ယခုအချိန်တွင်အတူတူပင်ဖြစ်နေသေးသော်လည်း သော့ချက်နာမည်၏အထက်နှင့်အနိမ့်အကြီးအသေး အပေါ် အခြေခံ. နောက်ထပ်ယုတ္တိဗေဒအပြောင်းအလဲအတွက်လုပ်ရန်လိုအပ်သည့်အခါအမိန့်သည်သင်၏တရားစီရင်ခြင်းယုတ္တိဗေဒကိုအကျိုးသက်ရောက်နိုင်သည်။

3 ။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုအတွက်အမိန့်ကိုဘယ်လိုရွေးချယ်ရမလဲ။

လိုအပ်ချက်များအပေါ် အခြေခံ. ဆုံးဖြတ်ရန်အကြံပြုသည် -

  • အကယ်. သင်သည် သော့ချက်ပုံစံကိုတူညီစွာလုပ်ဆောင် လိုပါက (ဥပမာစာလုံးအသေးများကိုရှောင်ရှားရန်အသေးလုံးကိုပြောင်းလဲခြင်းကဲ့သို့သော) သင် array_change_key_Key_case () ကို သုံးနိုင်သည်။

  • အကယ်. သင်သည်စစ်ထုတ်ခြင်းဆိုင်ရာယုတ္တိဗေဒကိုပိုမိုအာရုံစိုက်ပါက, array တန်ဖိုးများကိုပိုမိုအာရုံစိုက်ပြီးသော့အမည်များပုံစံကိုဂရုမစိုက်ပါကသင် array_filter () ကို ပထမ ဦး ဆုံးအသုံးပြုသည်ကိုအရေးမကြီးပါ။

  • နှစ် ဦး စလုံးကိုသုံးရပါမည်။ မသေချာမရေရာသည့်ယုတ္တိအမှားများကိုရှောင်ရှားရန်အစီအစဉ်ကိုရှင်းရှင်းလင်းလင်းသတ်မှတ်ရန်အကောင်းဆုံးဖြစ်သည်။