လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> array_diff_assoc () ကို အသုံးပြု. array နှိုင်းယှဉ်ခြင်းလုပ်ငန်းများကိုထိရောက်စွာလုပ်ဆောင်ရန်မည်သို့ပြုလုပ်ရမည်နည်း။

array_diff_assoc () ကို အသုံးပြု. array နှိုင်းယှဉ်ခြင်းလုပ်ငန်းများကိုထိရောက်စွာလုပ်ဆောင်ရန်မည်သို့ပြုလုပ်ရမည်နည်း။

M66 2025-06-06

PHP တွင် array alignment သည်အထူးသဖြင့် Array မျိုးစုံအကြားကွဲပြားခြားနားမှုများကိုကိုင်တွယ်ရန်လိုအပ်သည့်အခါဘုံလုပ်ငန်းဖြစ်သည်။ PHP ၏ built-in function array_diff_assoc () သည်ပထမခင်းကျင်းမှုနှစ်ခုသို့မဟုတ်အခြား array များ၌မတည်ရှိသည့် array နှစ်ခုထက်ပိုသော array များနှင့်ပြန်လာသည့်အရာများကိုနှိုင်းယှဉ်ရန်အသုံးပြုသောအလွန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ သို့သော်လက်တွေ့ကျသောအပလီကေးရှင်းများတွင် Arrays မျိုးစုံ၏ alignments များ၏ alignments များကိုထိရောက်စွာကိုင်တွယ်ရန်လိုအပ်သည့်အခါစိန်ခေါ်မှုများရှိနိုင်သည်။

ဤဆောင်းပါးသည် array_diff_assoc () နှင့်ကွင်းဆက်ဖွဲ့စည်းပုံကိုမည်သို့အသုံးပြုရမည်, အထူးသဖြင့်ရှုပ်ထွေးသော multi-array နှိုင်းယှဉ်မှုများနှင့်ရင်ဆိုင်ရသောအခါစွမ်းဆောင်ရည်မြှင့်တင်ခြင်းကိုမည်သို့ရှောင်ရှားနိုင်မည်နည်း။

1 ။ array_diff_assoc ၏အခြေခံအသုံးပြုမှု ()

array_diff_assoc () function ကို arry နှစ်ခုနှင့်နှိုင်းယှဉ်ရန်အသုံးပြုသည်။ ၎င်းသည်ပထမဆုံးခင်းကျင်းမှုတွင်တည်ရှိခဲ့သောဒြပ်စင်များကိုပြန်ယူပြီးအခြား array များ၌မဟုတ်ဘဲနှိုင်းယှဉ်သောအခါသော့ချက်အမည်နှင့်သော့ချက်တန်ဖိုးကိုထည့်သွင်းစဉ်းစားသည်။

သဒ္ဒါ:

 array_diff_assoc(array $array1, array $array2, array ...$arrays): array
  • $ array1 : နှိုင်းယှဉ်ခံရဖို့ပထမ ဦး ဆုံးခင်းကျင်း။

  • $ array2 , $ arrays : အနာဂတ်မှာနှိုင်းယှဉ်ဖို့လိုအပ်တဲ့ခင်းကျင်း။

ဥပမာ -

 $array1 = ["a" => "apple", "b" => "banana", "c" => "cherry"];
$array2 = ["a" => "apple", "b" => "banana"];
$array3 = ["a" => "apple", "b" => "pear"];

$result = array_diff_assoc($array1, $array2, $array3);
print_r($result);

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

 Array
(
    [c] => cherry
)

ဤဥပမာ တွင် array_diff_assoc () သည် ကွဲပြားခြားနားသောအသုံးအနှုန်းကို ဒေါ်လာ array1 , i.E. C => ချယ်ရီ တွင်သာအကျိုးရှိစေလိမ့်မည်

2 ။ array များစွာ၏ alignment ကိုလုပ်ဆောင်ရန် loop ကိုဘယ်လိုသုံးရမလဲ။

Arrays မျိုးစုံပြုလုပ်ရန်လိုအပ်သည့်အခါကျွန်ုပ်တို့သည် array_diff_assoc () function ကိုအသုံးပြုရန် loop ဖွဲ့စည်းပုံကိုပေါင်းစပ်နိုင်သည်။ ဤနည်းလမ်း၏သော့ချက်မှာအဓိကခင်းကျင်းခြင်းနှင့်အခြားခင်းကျင်းမှုနှင့်အဓိကခင်းကျင်းမှုနှင့်အဓိကခင်းကျင်းမှုတစ်ခုအကြားကွဲပြားခြားနားမှုများကိုနှိုင်းယှဉ်ကြည့်ပါ။

ဥပမာ -

 // Multiple arrays ကိုအစပြု
$array1 = ["a" => "apple", "b" => "banana", "c" => "cherry"];
$array2 = ["a" => "apple", "b" => "banana"];
$array3 = ["a" => "apple", "b" => "pear"];

// တ ဦး တည်းခင်းကျင်းကို array သို့သိမ်းထားပါ
$arrays = [$array2, $array3];

// ခြားနားချက်ခင်းကျင်းစတင်စတင်
$diff = $array1;

// နှိုင်းယှဉ်သံသရာ
foreach ($arrays as $array) {
    $diff = array_diff_assoc($diff, $array);
}

print_r($diff);

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

 Array
(
    [c] => cherry
)

ဤဥပမာတွင်ကျွန်ုပ်တို့သည်အဓိကခင်းကျင်းသော array 1 array1 ကို သတ်မှတ်ပြီးအခြားခင်းကျင်းမှုကိုခင်းကျင်းစွာထည့်သွင်းရန်ထည့်သွင်းပါ။ ထို့နောက် array တစ်ခုချင်းစီကို array တစ်ခုစီကို array တစ်ခုနှင့်တစ်ခုနှင့်နှိုင်းယှဉ်ပါ။

3 စွမ်းဆောင်ရည်အကောင်းမြင်

လက်တွေ့ကျသောအပလီကေးရှင်းများအနေဖြင့်ကျယ်ပြန့်သော array အရေအတွက်သည်ကြီးမားသည် စွမ်းဆောင်ရည်တိုးတက်စေရန်အတွက်စာရင်းတစ်ခုချင်းစီတွင်နှိုင်းယှဉ်မှုအရေအတွက်ကိုလျှော့ချရန်အတွက်အချက်အလက်ဖွဲ့စည်းပုံကိုပိုမိုကောင်းမွန်စေရန်စဉ်းစားရန်ဖြစ်နိုင်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်မလိုအပ်သောနှိုင်းယှဉ်ချက်များကိုကြိုတင်သတ်မှတ်ထားခြင်းသို့မဟုတ်ခွဲထုတ်ခြင်းအားဖြင့်ကြိုတင်မဲနှိုင်းယှဉ်မှုကိုလျှော့ချနိုင်သည်။

ဥပမာ -

 // Multiple arrays ကိုအစပြု
$array1 = ["a" => "apple", "b" => "banana", "c" => "cherry"];
$array2 = ["a" => "apple", "b" => "banana"];
$array3 = ["a" => "apple", "b" => "pear"];

// ထပ်ခါတလဲလဲတွက်ချက်မှုကိုလျှော့ချရန် Pre-Merge Arrays
$mergedArrays = array_merge($array1, $array2, $array3);

// ပေါင်းစည်းရန် array နှိုင်းယှဉ်
$diff = array_diff_assoc($array1, $mergedArrays);

print_r($diff);

ဤ optimization နည်းလမ်းသည်ခင်းကျင်းမှု၏ဖြတ်သန်းမှုမျိုးစုံကိုလျော့နည်းစေနိုင်သည်, သို့သော်၎င်းသည်သတ်သတ်မှတ်မှတ်မြင်ကွင်းနှင့်အညီပြောင်းလွယ်ပြင်လွယ်လျှောက်လွှာတင်ရန်လိုအပ်သည်။

4 ။ ပြည့်စုံသောဥပမာ - ရှုပ်ထွေးသောခင်းကျင်းနှိုင်းယှဉ်လုပ်ငန်းများကိုကိုင်တွယ်ခြင်း

အသုံးပြုသူအချက်အလက်နှိုင်းယှဉ်ခြင်းလုပ်ငန်းတာဝန်တစ်ခုတွင်သင်လုပ်ဆောင်နေပြီးအသုံးပြုသူအချက်အလက်များသည်အခြားဒေတာဆိုင်ရာအချက်အလက်များတွင်မည်သည့်အသုံးပြုသူအချက်အလက်မတည်ရှိပါကရှာဖွေရန်အသုံးပြုသူအမျိုးမျိုးကိုနှိုင်းယှဉ်ကြည့်ရန်လိုအပ်သည်ဆိုပါစို့။ ARRAY_DIFF_ASTIFT_ASTIFT_ASPSOC () နှင့်ကွင်းများကိုထိရောက်စွာဖြည့်ဆည်းရန်ဖြည့်ဆည်းပေးနိုင်သည်။

 // အသုံးပြုသူဒေတာခင်းကျင်း
$userData1 = ["user1" => "John", "user2" => "Jane", "user3" => "Tom"];
$userData2 = ["user1" => "John", "user2" => "Jane"];
$userData3 = ["user1" => "John", "user2" => "Alice"];

// အသုံးပြုသူအချက်အလက်မျိုးစုံသိုလှောင်ထားပါ
$userDataSets = [$userData2, $userData3];

// ခြားနားချက်ခင်းကျင်းစတင်စတင်
$diffUsers = $userData1;

// loop မှတဆင့်ခြားနားချက် process
foreach ($userDataSets as $userDataSet) {
    $diffUsers = array_diff_assoc($diffUsers, $userDataSet);
}

print_r($diffUsers);

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

 Array
(
    [user3] => Tom
)

ရှုပ်ထွေးသောဥပမာတွင် array_diff_assoc () function မှတဆင့်အသုံးပြုသူအချက်အလက်များကို loops များနှင့်ပေါင်းစပ်ပြီးနောက်ဆုံးတွင်အခြား Datasets တွင်မရရှိနိုင်သည့်အသုံးပြုသူတစ် ဦး ကို ရှာဖွေသည်။

5 ။ အကျဉ်းချုပ်

ဆင်ခြင်သုံးသပ်ခြင်းအားဖြင့် array_diff_assoc () နှင့်ကွင်းဆက်ဖွဲ့စည်းပုံကိုအသုံးပြုပြီး arrays မျိုးစုံနှင့်နှိုင်းယှဉ်ခြင်းလုပ်ငန်းများကိုထိရောက်စွာကိုင်တွယ်နိုင်သည်။ ဤနည်းလမ်းသည်မတူကွဲပြားသောကွဲပြားခြားနားမှုအမျိုးမျိုးကိုနှိုင်းယှဉ်ခြင်းနှင့် code readability တိုးတက်ရန်လိုအပ်သည့်အခြေအနေများအတွက်အထူးသဖြင့်သင့်တော်သည်။ ဒေတာအမြောက်အများကိုပြုပြင်သည့်အခါ, array ဖွဲ့စည်းပုံကိုပိုကောင်းအောင်ပြုလုပ်ခြင်းဖြင့်စွမ်းဆောင်ရည်ကိုပိုမိုတိုးတက်စေနိုင်သည်။

ထို့အပြင် array_diff_assoc () သည် အဓိကတန်ဖိုးအတွဲများအကြားကွဲပြားခြားနားမှုများကိုသာနှိုင်းယှဉ်ပါကသတိရပါ။