PHP တွင် array_diff_Usassoc () function ကို arrays နှစ်ခုအကြားခြားနားချက်ကိုတွက်ချက်ရန်အသုံးပြုသည်။ ခြားနားချက်သည်သော့ချက်အမည်နှင့်စိတ်ကြိုက်နှိုင်းယှဉ်မှုအပေါ်အခြေခံသည်။ ၎င်း၏ function ရှေ့ပြေးပုံစံဖြစ်ပါတယ်:
array_diff_uassoc(array $array1, array $array2, callable $key_compare_func): array
array_diff_UAAssoc () သည် များသောအားဖြင့် Actsociative Arrays (i.E. တန်ဖိုးရှိအတွဲများပါ 0 င်သည်) ကို အသုံးပြု. အဓိကအကြောင်းရင်းများတန်းတူညီမျှမှုကို အခြေခံ. Array Element များကို filter လုပ်ရန်ခွင့်ပြုသည်။ သို့သော်စင်ကြယ်သောအညွှန်းကိန်းများကို အသုံးပြု. array_diff_UAASTIOR () function ကိုအသုံးပြုခြင်းသည်မမျှော်လင့်သောအပြုအမူများကိုဖြစ်ပေါ်စေပြီးမလိုအပ်သောစွမ်းဆောင်ရည်ဆုံးရှုံးမှုများကိုပင်ဖြစ်ပေါ်စေနိုင်သည်။
ပထမ ဦး စွာအညွှန်းကိန်းခင်းကျင်းမှုနှင့်အပေါင်းအသင်းဆိုင်ရာခင်းကျင်းမှုများအကြားခြားနားချက်ကိုနားလည်ရန်အလွန်အရေးကြီးသည်။ PHP တွင်:
Index Array : အဓိကတန်ဖိုးများသည်နံပါတ်များဖြစ်ပြီးများသောအားဖြင့်စာရင်းတစ်ခုသို့မဟုတ် sequence ကိုကိုယ်စားပြုသည်။
Associative Acray : အဓိကတန်ဖိုးများကိုအသုံးပြုသူသတ်မှတ်ထားသောနေရာများဖြစ်သည်။ မြေပုံများသို့မဟုတ်အဘိဓာန်များကိုကိုယ်စားပြုရန် "ကြိုးများသို့မဟုတ်ကိန်းဂဏန်းများ) ဖြစ်နိုင်သည်။
ဥပမာအားဖြင့်, ဤနေရာတွင်စင်ကြယ်သောအညွှန်းကိန်းခင်းကျင်းခြင်းနှင့်အပေါင်းအသင်းခင်းကျင်းမှုဥပမာတစ်ခုဖြစ်သည်။
$indexArray = [1, 2, 3, 4];
$assocArray = ['a' => 1, 'b' => 2, 'c' => 3];
array_diff_UAAssoc () သည် ActiveItive arrays များကို ပြုပြင်ရန်အထူးဒီဇိုင်းပြုလုပ်ထားသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ တွဲဖက်ခင်းကျင်းမှုတစ်ခုတွင်သော့ချက်ကျသောအမိန့်သည်မတရားဖြစ်နိုင်ပြီး array_diff_Usassoc () function များသည် array ၏ အဓိကအကြောင်းရင်းများကို နှိုင်းယှဉ်ခြင်းဖြင့်မည်သည့် element များကိုဖယ်ရှားသင့်ကြောင်းဆုံးဖြတ်သည်။ အမည်ရှိသော့ချက်များနှင့်အတူ Array နှင့်ဆက်ဆံရာတွင်ကိုင်တွယ်သောအခါဤသည်အလွန်ကောင်းစွာအလုပ်လုပ်ပါတယ်။
သို့သော်စင်ကြယ်သောအညွှန်းကိန်းများအတွက်စင်ကြယ်သောအညွှန်းကိန်းများအတွက်သော့များသည် 0 0 မှတိုးပွားလာသည်။ ထို့ကြောင့်သော့ချက်အမည်မဟုတ်ဘဲ ခင်းကျင်းမှု၏တန်ဖိုး အပေါ် အခြေခံ. အရေးယူခြင်းကိုအကဲဖြတ်သင့်သည်။ ၎င်းသည် array_diff_Uassoc () ကိုအကောင်းဆုံးရွေးချယ်မှုမဟုတ်ပါ။
စင်ကြယ်သောအညွှန်းကိန်းခင်းကျင်းမှုများတွင်သော့ချက်အမည်များတွင်အမှန်တကယ်အဓိပ္ပာယ်မရှိပါ။ နံပါတ်များကိုအလိုအလျောက်သတ်မှတ်ထားသည်။ ကျွန်ုပ်တို့ array_diff_UAAssoc () ကို သုံးသောအခါ function သည်အဓိကအကြောင်းရင်းများအပေါ် အခြေခံ. နှိုင်းယှဉ်သည်။ Index ခင်းကျင်းမှု၏အဓိကအကြောင်းရင်းများသည်ကျွန်ုပ်တို့၏စီးပွားရေးယုတ္တိဗေဒအတွက်အဓိပ္ပါယ်ရှိသောသတင်းအချက်အလက်များကိုမဖော်ပြထားပါ။ ဤနည်းအားဖြင့်နှိုင်းယှဉ်ခြင်း၏အဓိကအချက်သည်အရေးမကြီးသော element တစ်ခုတွင်အဓိကကျသည်။
ကျွန်ုပ်တို့တွင်အောက်ပါအတိုင်းအညွှန်းကိန်းနှစ်ခုရှိသည်ဆိုပါစို့။
$array1 = [1, 2, 3, 4];
$array2 = [5, 2, 3, 4];
ကျွန်ုပ်တို့ကိုနှိုင်းယှဉ်ရန် array_diff_Usassoc () ကို အသုံးပြုပါက -
$result = array_diff_uassoc($array1, $array2, function($a, $b) {
return $a - $b; // Custom Key နှိုင်းယှဉ် function ကို
});
print_r($result);
အထက်ပါကုဒ်သည်အချည်းနှီးသောခင်းကျင်းမှုကိုပြန်လည်ထည့်သွင်းထားသောကြောင့်၎င်းသည်ခင်းကျင်းရေးတွင်သော့ချက်အမည်များကိုနှိုင်းယှဉ်ရန်ကြိုးစားနေသည်။
function ကိုကောင်းမွန်စွာအလုပ်လုပ်လျှင်ပင် array_diff_Usassoc () တွင်မလိုအပ်သောစွမ်းဆောင်ရည် overhead ပါ 0 င်သည်။ indexed ခင်းကျင်းမှုတစ်ခုတွင်နှိုင်းယှဉ်ခြင်း၏အဓိကအချက်မှာသော့မဟုတ်ဘဲ ခင်းကျင်းမှု၏တန်ဖိုးသည် တန်ဖိုးထားသင့်သည်။ array_diff () ကဲ့သို့သောလုပ်ဆောင်ချက်များကိုအသုံးပြုခြင်းသည်ပိုမိုရိုးရှင်းပြီးတိုက်ရိုက်နှင့်ပိုမိုမြင့်မားသောစွမ်းဆောင်ရည်ရှိသည်။
ဥပမာအားဖြင့်, အောက်ပါကုဒ်သည် array ကွဲပြားခြားနားမှုနှိုင်းယှဉ်မှုများပိုမိုအကောင်အထည်ဖော်နိုင်သည်။
$result = array_diff($array1, $array2);
print_r($result);
ဤနည်းလမ်းသည်မသက်ဆိုင်သောအဓိကအမည်များနှင့်မသက်ဆိုင်သောအဓိကအမည်များမပါ 0 င်ဘဲခင်းကျင်းမှု၏တန်ဖိုးများကိုသာနှိုင်းယှဉ်ထားသည် ။
array_diff_Usassoc () ၏အကြီးမားဆုံးအင်္ဂါရပ်မှာ Custom key key နှိုင်းယှဉ်မှု function ဖြစ်သည်။ စိတ်ကြိုက်နှိုင်းယှဉ်လုပ်ဆောင်ချက်များသည်မလိုအပ်သောကုဒ်ရှုပ်ထွေးမှုကိုထည့်ပြီးအမှန်တကယ်တန်ဖိုးမထားပါ။
ပေါင်းစည်းရန် array_diff_Usassoc () function သည် Associative Array များကိုကိုင်တွယ်ရန်အတွက်အလွန်အသုံးဝင်သည်, သို့သော်အညွှန်းကိန်းခင်းကျင်းမှုတွင်မသင့်တော်ပါ။ indexed arrays, array_diff () သို့မဟုတ်အလားတူရိုးရှင်းသောလွယ်ကူခြင်းနှင့်အလားတူပိုမိုထိရောက်သောလုပ်ဆောင်မှုများအတွက်မလိုအပ်သောအဓိကနှိုင်းယှဉ်မှုများနှင့်စွမ်းဆောင်ရည်ကိုတိုးမြှင့်ခြင်းကြောင့် Code Code ကိုတိုးမြှင့်ခြင်းကိုရှောင်ရှားရန်အသုံးပြုသင့်သည်။