ဒေတာအပြောင်းအလဲနဲ့ဖျော်ဖြေတဲ့အခါအထူးသဖြင့်အသုတ်ဒေတာကွဲပြားခြားမှုနှိုင်းယှဉ်မှုလိုအပ်တဲ့နေရာတွေမှာ PHP ရဲ့ built-in array_diff_Uassoc function ကိုသုံးတဲ့နေရာတွေမှာဒီလိုအပ်ချက်ကိုအောင်မြင်အောင်လုပ်နိုင်ပါတယ်။ ဤဆောင်းပါးသည်ဤလုပ်ဆောင်မှုမှတဆင့် Batch ဒေတာကွဲပြားမှုနှိုင်းယှဉ်မှုကိုမည်သို့ထိထိရောက်ရောက်အကောင်အထည်ဖော်ရမည်ကိုပြသပါလိမ့်မည်။
Array_Diff_UASTOC မှပေးသော PHP မှပေးသော function တစ်ခုဖြစ်ပြီးနှစ်ခုထက်ပိုသော array နှစ်ခုသို့မဟုတ်နှစ်ခုထက်ပိုသောကွဲပြားခြားနားမှုများကိုတွက်ချက်ရန်နှင့်အဓိကအမည်များကိုနှိုင်းယှဉ်ခြင်းနည်းလမ်းကိုစိတ်ကြိုက်ပြုပြင်နိုင်သည်။ Array_Diff_AssoC function ကိုဆင်တူသည်, Array_Diff_UAASSOC သည် Array ၏တန်ဖိုးများကိုနှိုင်းယှဉ်ရုံသာမကခင်းကျင်း၏အဓိကအကြောင်းများကိုလည်းနှိုင်းယှဉ်သည်။ သို့သော်ခြားနားချက်မှာ array_diff_UAASTOR သည် developer များအားစိတ်ကြိုက်သော့ချက်အမည်နှိုင်းယှဉ်မှုဆိုင်ရာလုပ်ဆောင်ချက်များအားပေးရန်ခွင့်ပြုသည်။
array_diff_uassoc(array $array1, array $array2, callable $key_compare_func): array
$ array1 : ပထမ ဦး ဆုံးခင်းကျင်း။
$ array2 : နှိုင်းယှဉ်ဖို့ခင်းကျင်း။
$ key_Compare_funct : Custom Key Name နှိုင်းယှဉ်မှု function ကိုသော့ချက်နှစ်ခု၏နှိုင်းယှဉ်မှုရလဒ်ကိုကိုယ်စားပြုသည်။
ကျွန်ုပ်တို့တွင် Associative Array နှစ်ခုရှိသည်ဆိုပါစို့, ထုတ်ကုန် ID နှင့်အမည်အသီးသီးပါ 0 င်သည့် Associative Array နှစ်ခုရှိသည်ဆိုပါစို့။ ကျွန်ုပ်တို့တွင်ခင်းကျင်းမှု၏တန်ဖိုးများကိုနှိုင်းယှဉ်ကြည့်ရုံသာမက၎င်းတို့ကို Custom key name နှိုင်းယှဉ်မှုပုံစံဖြင့်နှိုင်းယှဉ်နိုင်သည်။
<?php
// ပထမ ဦး ဆုံးခင်းကျင်း,ထုတ်ကုန်များပါဝင်သည်IDနာမည်
$array1 = [
101 => 'Apple',
102 => 'Banana',
103 => 'Orange',
104 => 'Grape'
];
// ဒုတိယ array,ထုတ်ကုန်များပါဝင်သည်IDနာမည်
$array2 = [
101 => 'Apple',
102 => 'Banana',
105 => 'Mango'
];
// Custom Key Name နှိုင်းယှဉ်မှု function ကို,သော့အမည်များအရွယ်အစားကိုနှိုင်းယှဉ်ပါ
function custom_key_compare($key1, $key2) {
return $key1 <=> $key2; // အသုံးပြု PHP 7 နှိုင်းယှဉ်အော်ပရေတာ
}
// အသုံးပြု array_diff_uassoc ရှာတွေ့သည် $array1 ဒီမှာမရှိဘူး $array2 အတွက်ဒြပ်စင်
$result = array_diff_uassoc($array1, $array2, 'custom_key_compare');
// ရလဒ်ရလဒ်
print_r($result);
?>
Array1 နှင့် Array2 ထုတ်ကုန် ID နှစ်ခုအစုံနှင့်ဒေတာကိုအသီးသီးဖော်ပြပါ။
<=> operator ကိုအသုံးပြုပြီးသော့ချက်အမည်များကို sparray တွင်ဖော်ပြရန် Custom_Key_Key_COSTARTART လုပ်ငန်းကိုကျွန်ုပ်တို့စိတ်ကြိုက်ပြုပြင်ခဲ့ကြသည်။
array_Diff_UASTARS ကို သုံး. array 1 တွင် ရှိသည့်ပြန်လာသည့်အရာများကိုပြန်လည် 0 င်ရောက်ရန်အတွက် array_diff_Uassoc ကို သုံးပါ။
Array
(
[103] => Orange
[104] => Grape
)
သင်မြင်နိုင်သည့်အတိုင်းရလဒ်ကို array1 တွင်ပါ 0 င်သည့်ထုတ်ကုန် ID နှင့်အမည်အတွဲများကိုရလဒ်အနေဖြင့်ပြန်ပို့သည်။ သို့သော်ဤအချက်အလက်များကို array2 တွင်မတွေ့ရပါ။
Array_Diff_Usassoc function သည်အသုတ်ဆိုင်ရာအချက်အလက်ခြားနားနှိုင်းယှဉ်မှုတွင်အလွန်အသုံးဝင်သည်။ ဤတွင်အချို့သောဘုံ application တစ်ခုမှာ -
ဒေတာဘေ့စ်၏အချက်အလက်များကိုတစ်ပြိုင်တည်းချိန်ကိုက် သောအခါ Database ၏အချက်အလက်များကိုတစ်ပြိုင်တည်းချိန်ကိုက်သောအခါ database နှစ်ခုအတွင်းရှိ differential data ကိုရှာဖွေရန် array_diff_Usassoc ကို သုံးနိုင်သည်။
ကုန်ပစ္စည်းစာရင်းစီမံခန့်ခွဲမှု - e-commerce ပလက်ဖောင်းများတွင်လက်ရှိစာရင်းနောက်ဆုံးစာရင်းအချက်အလက်များနှင့်နှိုင်းယှဉ်ရန်မကြာခဏလိုအပ်သည်။ Array_diff_UASTOC သည် မည်သည့်ထုတ်ကုန်များကိုမွမ်းမံခြင်းမရှိသေးကြောင်းရှာဖွေရန်နှင့်မည်သည့်ထုတ်ကုန်များကိုအသစ်ထပ်မံထည့်သွင်းထားသည်ကိုရှာဖွေနိုင်သည်။
မှတ်တမ်းဒေတာနှိုင်းယှဉ်ချက် - array_diff_Uassoc သည် log files နှစ်ခုအကြားဒေတာကွဲပြားခြားနားမှုများကိုထိရောက်စွာနှိုင်းယှဉ်နိုင်အောင်ကူညီနိုင်သည်။
PHP ၏ Array_Diff_USIFT_USEAST function ကိုမှတစ်ဆင့်ကျွန်ုပ်တို့သည်အသုတ်အချက်အလက်အမျိုးမျိုးနှင့်နှိုင်းယှဉ်လျှင်အထူးသဖြင့်ပုံမှန်မဟုတ်သောအမည်နှိုင်းယှဉ်မှုလိုအပ်သည့်နေရာများတွင်ပြုလုပ်နိုင်သည်။ Database Synchronization, Inventory Management သို့မဟုတ် log အချက်အလက်နှိုင်းယှဉ်ခြင်းနှင့်နှိုင်းယှဉ်ပါကနှိုင်းယှဉ်ခြင်းနှင့်နှိုင်းယှဉ်ပါကဖြစ်သည်။ array_diff_Usoc သည်အလွန်လက်တွေ့ကျသောကိရိယာတစ်ခုဖြစ်သည်။