PHP တွင် Array ခြားနားချက်နှင့်ဆက်ဆံရာတွင် PHP, array_diff () နှင့် Array_diff_ukey () တွင် မကြာခဏဖော်ပြသောလုပ်ဆောင်ချက်နှစ်ခုဖြစ်သည်။ သို့သော်သတ်သတ်မှတ်မှတ်လိုအပ်ချက်များအတွက် developer များသည် Array_diff_ukey () အစား array_diff () နှင့် array_diff () နှင့်အသုံးပြုလေ့ရှိသည်ကိုတွေ့ရလေ့ရှိသည်။ ဒီနောက်ကွယ်မှာဘာထည့်သွင်းစဉ်းစားနေကြတာလဲ။ ဤဆောင်းပါးသည်ဤနည်းစနစ်နှစ်ခု၏အကျိုးသက်ရောက်မှုများကိုခွဲခြမ်းစိတ်ဖြာရန်နှင့်အားသာချက်များနှင့်အားနည်းချက်များကိုနှိုင်းယှဉ်ရန်ဥပမာများကိုဤဆောင်းပါးကပေါင်းစပ်ပါလိမ့်မည်။
array_diff_ukey () သည် arry-defback functack functack functack functack functack functack functack functions များအပေါ် အခြေခံ. array နှစ်ခု၏ သော့များကို နှိုင်းယှဉ်ရန်အသုံးပြုသည်။ ဤလုပ်ဆောင်ချက်၏ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
array array_diff_ukey(array $array1, array $array2, callable $key_compare_func);
ဥပမာအားဖြင့်:
function key_compare($a, $b) {
return strcmp($a, $b);
}
$array1 = ["a" => 1, "b" => 2, "c" => 3];
$array2 = ["b" => 4, "d" => 5];
$result = array_diff_ukey($array1, $array2, 'key_compare');
print_r($result); // ထုတ်လုပ်ခြင်း: Array ( [a] => 1 [c] => 3 )
array_diff_ukey () သည် နှိုင်းယှဉ်မှုအတွက် callback function ကိုအသုံးပြုသောကြောင့်၎င်းသည်စွမ်းဆောင်ရည်အပေါ်သက်ရောက်မှုရှိသည်နှင့် code ၏ရှုပ်ထွေးမှုကိုတိုးပွားစေသည်။ အချို့သောကိစ္စရပ်များတွင်၎င်းကိုအောက်ပါတို့ဖြင့်အစားထိုးနိုင်သည်။
$array1 = ["a" => 1, "b" => 2, "c" => 3];
$array2 = ["b" => 4, "d" => 5];
// သော့ဝါဒီခြားနားချက်ကိုရယူပါ
$diffKeys = array_diff(array_keys($array1), array_keys($array2));
// အသစ်တစ်ခုကိုခင်းကျင်းတည်ဆောက်ပါ
$result = array_intersect_key($array1, array_flip($diffKeys));
print_r($result); // ထုတ်လုပ်ခြင်း: Array ( [a] => 1 [c] => 3 )
ဤနည်းလမ်း၏ယုတ္တိဗေဒမှာ -
ပထမ ဦး စွာ arrys နှစ်ခု၏အဓိကအမည်များကိုရယူပါ;
သော့ချက်အစုကိုတွက်ချက်ရန် Array_diff () ကိုသုံးပါ။
ထို့နောက် array_intesect_key မှတဆင့်သက်ဆိုင်ရာအဓိကတန်ဖိုးများကိုထုတ်ယူပါ။
နှိုင်းယှဉ်ပစ္စည်းများ | array_diff_ukey () | array_keys () array_diff () |
---|---|---|
ဖတ်ခြင်း | အလတ်စား, နှိုင်းယှဉ် function ကိုသတ်မှတ်ရန်လိုအပ်သည် | ပိုမိုမြင့်မားသော, ရှင်းလင်းသောယုတ္တိဗေဒ |
ပြောင်းလွယ်ပြင်လွယ် | မြင့်မားသောစိတ်ကြိုက်နှိုင်းယှဉ်နှိုင်းယှဉ်ယုတ္တိဗေဒ | ယေဘုယျအားဖြင့်, default string ကိုနှိုင်းယှဉ်ဖြစ်ပါတယ် |
ပြပဲှ | calmback လုပ်ဆောင်ချက်များကိုပါ 0 င်သည့်အနည်းငယ်နှေးကွေးခြင်း | များသောအားဖြင့်ပိုမိုမြန်ဆန်စွာ, အထူးသဖြင့်ဒေတာအမြောက်အများအတွက် |
လိုက်ကြားမှု | PHP သည်ကောင်းမွန်စွာထောက်ခံမှုဖြင့်တည်ဆောက်ထားသည် | လုံးဝအခြေခံလုပ်ဆောင်ချက်များကိုအပေါ်အခြေခံပြီးခိုင်မာတဲ့လိုက်ဖက်တဲ့အပေါ်အခြေခံပြီး |
သက်ဆိုင်တဲ့အခြေအနေများ | ရှုပ်ထွေးသော key နှိုင်းယှဉ်စျေးနှုန်း | ရိုးရှင်းသောသော့ဝါဒီခြားနားချက်ကိုစီရင် |
ကိုထိန်းသိမ်းနိုင်မှု | ဆင်းရဲသောသူ, | ok, ရှင်းလင်းသောဖွဲ့စည်းပုံ |
ကိစ္စရပ်အများစုတွင် array_keys () array_diff_diff () array_iniff ()) နှင့်အတူ array_intesect_ey_key () နှင့်အတူကွဲပြားခြားနားမှုများနှင့်ကွဲပြားမှုရှိ, နှိုင်းယှဉ်မှုယုတ္တိဗေဒကိုစိတ်ကြိုက်ပြုပြင်ရန်လိုအပ်ပါက (ဥပမာအားဖြင့် sensitivity, numerical နှိုင်းယှဉ်ခြင်းစသည်), array_diff_ukey () array_diff_ukey () သည်ပိုမိုသင့်လျော်သောကိရိယာတစ်ခုဖြစ်သည်။