PHP တွင် array_diff_ukey function ကို arrays နှစ်ခု၏သော့များကိုနှိုင်းယှဉ်ရန်နှင့်ပထမခင်းကျင်းရေးတွင်ဒုတိယခင်းကျင်းမှုတွင်မတည်ရှိသည့်သော့ချက်နှင့်သက်ဆိုင်သောသော့ချက်တန်ဖိုးအတွဲများကိုပြန်ပို့နိုင်သည်။ Array_diff_ukey သည် သော့များကိုမည်သို့နှိုင်းယှဉ်ရမည်ကိုဆုံးဖြတ်သည့် callback function ကိုလက်ခံသည်။ ပုံမှန်အားဖြင့် array_diff_ukey သည် တင်းကြပ်သောတန်းတူညီမျှမှုနှိုင်းယှဉ်ချက်များကိုအသုံးပြုသည် (i.e. === ) တွင် မူတည်. အချို့သောကိစ္စရပ်များတွင်ကျွန်ုပ်တို့သည် callback function ကို ပေး. ပြောင်းလဲခြင်းဖြင့်ပြောင်းလဲနိုင်သည်။
ဒီဆောင်းပါးမှာ StrnatcMP ကဲ့သို့သော PHP betto in function များကို အသုံးပြု. အဓိကနှိုင်းယှဉ်မှုများပြုလုပ်ရန်အတွက် array_diff_ukey ၏စွမ်းဆောင်ရည်ကိုမြှင့်တင်ပေးသည့်အခါအထူးသဖြင့် Array_Diff_ukey ၏စွမ်းဆောင်ရည်ကိုတိုးတက်အောင်လုပ်ရမည်။
array_diff_ukey ၏ function ရှေ့ပြေးပုံစံသည်အောက်ပါအတိုင်းဖြစ်သည် -
array_diff_ukey(array $array1, array $array2, callable $key_compare_func): array
$ array1 : ပထမ ဦး ဆုံးခင်းကျင်း
$ array2 : ဒုတိယခင်းကျင်း
$ key_compare_funct : Array keys ကိုနှိုင်းယှဉ်ရန်အသုံးပြုသော callback function ကို
ဤလုပ်ဆောင်ချက်သည်ဒုတိယခင်းကျင်းမှုတွင်သော့မရှိသေးသောပထမခင်းကျင်းမှုတွင် element အသစ်များပါ 0 င်သော array အသစ်တစ်ခုကိုရရှိစေသည်။
strnatcmp သည် PHP တွင် stries နှစ်ခုကိုသဘာဝအမိန့်နှင့်နှိုင်းယှဉ်ရန်အတွက် built-in function တစ်ခုဖြစ်သည်။ သမားရိုးကျ string နှိုင်းယှဉ်မှုများနှင့်မတူဘဲ strnatcmp သည် သဘာဝပတ်ဝန်းကျင် sorting ၏ "သဘာဝ sorting" ကို "သဘာဝ sorting" ကိုပြောင်းရွှေ့ခွင့်ပြုသည်။ အစိတ်အပိုင်းများကိုကိန်းဂဏန်းအရွယ်အစားနှင့်နှိုင်းယှဉ်ပါ
နမူနာကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -
$array1 = [
"10" => "a",
"2" => "b",
"100" => "c"
];
$array2 = [
"1" => "x",
"10" => "y"
];
// အသုံးပြု strnatcmp သော့များကို callback လုပ်ဆောင်ချက်များအဖြစ်နှိုင်းယှဉ်ခြင်း
$result = array_diff_ukey($array1, $array2, 'strnatcmp');
print_r($result);
ဤဥပမာတွင် Array_Diff_ukey သည် ဒေါ်လာ array1 နှင့် $ array2 ၏သော့များကိုနှိုင်းယှဉ်ရန် strnatcmp ကို အသုံးပြုလိမ့်မည်။ အကယ်. $ array1 တွင်သော့ချက်သည် ဒေါ်လာ array2 တွင်မပေါ်ပါကသဘာဝအမိန့်စည်းမျဉ်းများအရမထီမဲ့မြင်ပြုရန်စိတ်ပိုင်းဖြတ်ထားရန်စိတ်ပိုင်းဖြတ်ထားရန်စိတ်ပိုင်းဖြတ်ထားရန်စိတ်ပိုင်းဖြတ်ထားသည့်အတွက် ဒေါ်လာတန်ဖိုးရှိအတွဲ 1 ကိုထိန်းသိမ်းထားမည်ဖြစ်သည်။
ပုံမှန်အားဖြင့် array_diff_ukey သည် တင်းကျပ်သောတန်းတူညီမျှနှိုင်းယှဉ်ချက်နည်းလမ်းကိုအသုံးပြုသည်။ === ။ ဆိုလိုသည်မှာသော့နှင့်တန်ဖိုးများကိုအတိအကျတူညီသည့်ကိစ္စများသာတန်းတူဟုသတ်မှတ်ခြင်းကိုဆိုလိုသည်။ StrnatcMP ကို အသုံးပြုခြင်းသည်သော့များကိုသဘာဝအမိန့်ဖြင့်တွက်ချက်ရန်ခွင့်ပြုသည်။
ဥပမာအားဖြင့် strings များအတွက် "10" နှင့် "2" အတွက်သာမန် string ကိုနှိုင်းယှဉ်ခြင်းက "10" သည် " 2" ထက်နည်းသည်, "2" ထက်လျော့နည်းသည်။
အချက်အလက်အမြောက်အများကိုကျွန်ုပ်တို့လုပ်ဆောင်သောအခါအထူးသဖြင့်အဓိကနှိုင်းယှဉ်ခြင်းနှင့်နှိုင်းယှဉ်လျှင်မှန်ကန်သောနှိုင်းယှဉ်ခြင်း function ကိုရွေးချယ်ခြင်းသည်စွမ်းဆောင်ရည်ကိုသိသိသာသာတိုးတက်စေနိုင်သည်။ ဥပမာအားဖြင့် StrcMPP သည် strcmp ကဲ့သို့သောပုံမှန် string နှိုင်းယှဉ်မှုများကိုအသုံးပြုခြင်းထက်ပိုမိုထိရောက်နိုင်သည်။
ထို့အပြင် PHP ရှိ built-in နှိုင်းယှဉ်လုပ်ဆောင်ချက်များသည်များသောအားဖြင့်ကျွန်ုပ်တို့ကိုယ်တိုင်အကောင်အထည်ဖော်သည့် callback function များထက်ပိုမိုမြန်ဆန်ပြီးပိုမိုမြန်ဆန်သည်။ ထို့ကြောင့်စွမ်းဆောင်ရည်ကိုပိုမိုကောင်းမွန်စေရန်အတွက်သင့်လျော်သော built-in function ကိုရွေးချယ်ခြင်းသည် callback function ကိုရိုးရိုးရှင်းရှင်းနှင့်ထိရောက်သောနည်းလမ်းတစ်ခုဖြစ်သည်။
ကျနော်တို့ကိန်းဂဏန်းများပုံစံအတွက်သော့အချို့ပါဝင်သည်ဆိုပါစို့။ array_diff_ukey မှတစ်ဆင့် ဒေါ်လာ array2 တွင်မတည်ရှိသည့် ဒေါ်လာ array1 တွင်သော့ချက်တန်ဖိုးအတွဲများကိုကျွန်ုပ်တို့ရှာဖွေလိုသည်။ strnatcmp ကို အသုံးပြုရန်အလွန်သင့်လျော်သည်။
$array1 = [
"100" => "a",
"2" => "b",
"20" => "c",
];
$array2 = [
"10" => "x",
"100" => "y",
];
$result = array_diff_ukey($array1, $array2, 'strnatcmp');
print_r($result);
output ရလဒ် -
Array
(
[2] => b
[20] => c
)
PHP built-in function strnatcmp ကို ဖြတ်သန်းခြင်းအားဖြင့် array_diff_ukey သို့ callback function တစ်ခုအနေဖြင့်ကျွန်ုပ်တို့သည်ပိုမိုပြောင်းလွယ်ပြင်လွယ်ရှိသောသော့ချက်နှိုင်းယှဉ်မှုနှင့်အချို့သောကိစ္စရပ်များတွင်စွမ်းဆောင်ရည်ကိုတိုးတက်အောင်လုပ်နိုင်သည်။ သဘာဝအကောင်းဆုံးအမျိုးအစားနှင့်နှိုင်းယှဉ်ခြင်းနည်းလမ်းသည်အထူးဂဏန်းအစိတ်အပိုင်းများပါ 0 င်သောသော့များကိုကိုင်တွယ်ရန်အထူးသဖြင့်သင့်လျော်သည်။
ကျွန်ုပ်တို့သည်ကြီးမားသောဒေတာအစုများပေါ်တွင်လုပ်ဆောင်နေသည့်အခါအဓိကနှိုင်းယှဉ်ရန်အတွက်သင့်လျော်သော built-in function ကိုရွေးချယ်ခြင်းသည်စွမ်းဆောင်ရည်တိုးတက်စေရန်လွယ်ကူသောနည်းလမ်းတစ်ခုဖြစ်သည်။ strnatcmp နှင့်ပေါင်းစပ်ထားသော array_diff_ukey သည်သော့များကိုပိုမိုတိကျစွာနှင့်ထိရောက်စွာနှိုင်းယှဉ်နိုင်သည်။