လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Array_chunk နှင့် array_diff တို့နှင့်ပေါင်းစပ်ခြင်းဆိုင်ရာကွဲပြားခြားနားမှုများကိုမည်သို့ရှာဖွေရမည်နည်း

Array_chunk နှင့် array_diff တို့နှင့်ပေါင်းစပ်ခြင်းဆိုင်ရာကွဲပြားခြားနားမှုများကိုမည်သို့ရှာဖွေရမည်နည်း

M66 2025-04-28

PHP တွင်အထူးသဖြင့်ဒေတာနှိုင်းယှဉ်မှုများပြုလုပ်သောအခါမတူကွဲပြားသောကွဲပြားမှုများကိုကိုင်တွယ်ခြင်းသည်ပုံမှန်အားဖြင့်ခွဲစိတ်ကုသမှုတစ်ခုဖြစ်သည်။ Array_chunk နှင့် array_diff တို့သည် လက်တွေ့ကျသောလုပ်ဆောင်ချက်နှစ်ခုဖြစ်ပြီးအရေးပါသောကွဲပြားမှုများအကြားကွဲပြားခြားနားမှုများကိုရှာဖွေရန်ကျွန်ုပ်တို့အားကူညီနိုင်သည့်အလွန်လက်တွေ့လုပ်ဆောင်ချက်နှစ်ခုဖြစ်သည်။ ဤဆောင်းပါးသည်ဤလုပ်ဆောင်ချက်နှစ်ခုကိုမိတ်ဆက်ပေးပြီးမြန်ဆန်သော array ခြားနားချက်ကိုမည်သို့အကောင်အထည်ဖော်ရမည်ကိုပြပါလိမ့်မည်။

1 ။ array_chunk function ကိုမိတ်ဆက်

array_chunk function ကိုသေးငယ်တဲ့သေးငယ်တဲ့ arrays သို့ကြီးမားတဲ့ခင်းကျင်းဖို့အသုံးပြုသည်။ ဒါဟာနှစ်ခု parameters တွေကိုလက်ခံရရှိ:

  • မူရင်းခင်းကျင်း,

  • တစ်ခုချင်းစီကို split ခင်းကျင်းတစ်ခုချင်းစီတွင်ဒြပ်စင်အရေအတွက်။

ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်ကြီးမားသောခင်းကျင်းမှုများစွာကိုများစွာဖြည့်ဆည်းပေးနိုင်သည်။ အချက်အလက်အမြောက်အများကိုပြုပြင်သည့်အခါအပြောင်းအလဲနဲ့တစ်ခါတစ်ရံစွမ်းဆောင်ရည်ကိုတိုးတက်စေသည်။

 <?php
$array = range(1, 10);  // ကွန်တိန်နာတစ်ခုဖန်တီးပါ 1 ရောက်လာ 10 ၏ခင်းကျင်း
$chunkedArray = array_chunk($array, 3);  // တစ်ခုချင်းစီကိုသို့ array ထားပါ 3 ဒြပ်စင်ကိုအပိုင်းအစတစ်ခုထဲသို့ခွဲပါ
print_r($chunkedArray);
?>

ရလဒ်ရလဒ် -

 Array
(
    [0] => Array ( [0] => 1 [1] => 2 [2] => 3 )
    [1] => Array ( [0] => 4 [1] => 5 [2] => 6 )
    [2] => Array ( [0] => 7 [1] => 8 [2] => 9 )
    [3] => Array ( [0] => 10 )
)

2 ။ array_diff function ကိုမိတ်ဆက်

Array_diff function ကိုနှစ်ခုသို့မဟုတ်နှစ်ခုထက်ပိုသော array များနှင့်နှိုင်းယှဉ်ရန်နှင့်ကွဲပြားခြားနားမှုများပါ 0 င်သောခင်းကျင်းမှုကိုပြန်လည်ပေးရန်အသုံးပြုသည်။ အထူးသဖြင့်၎င်းသည်အခြား arrays နှင့်ကွဲပြားခြားနားသောမူလခင်းကျင်းမှုတွင် element များကိုပြန်ပို့သည်။

 <?php
$array1 = [1, 2, 3, 4, 5];
$array2 = [4, 5, 6, 7];
$diff = array_diff($array1, $array2);  // တေှ့မြင် $array1 နှင့် $array2 ခြားနားချက်
print_r($diff);
?>

ရလဒ်ရလဒ် -

 Array
(
    [0] => 1
    [1] => 2
    [2] => 3
)

အထက်ပါဥပမာတွင် array_diff သည် ဒေါ်လာ array1 နှင့် $ array2 ကို နှိုင်းယှဉ်။ elements များကို ဒေါ်လာ array 1 တွင်ပြန်ပို့သည်။

3 ။ Array_chunk နှင့် Array_Diff ကိုပေါင်းစပ်ခြင်း array ခြားနားချက်ကိုရှာဖွေရန်

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

 <?php
$array1 = range(1, 20);  // a 1 ရောက်လာ 20 ၏ခင်းကျင်း
$array2 = range(10, 30);  // a 10 ရောက်လာ 30 ၏ခင်းကျင်း

// တစ်ခုချင်းစီကိုနှစ်ခု arrys ထားတော်မူ၏ 5 Element တွေကိုအပိုင်းပိုင်းခွဲထားတယ်
$chunkedArray1 = array_chunk($array1, 5);
$chunkedArray2 = array_chunk($array2, 5);

// 找出每个块之间ခြားနားချက်
foreach ($chunkedArray1 as $chunk1) {
    foreach ($chunkedArray2 as $chunk2) {
        $diff = array_diff($chunk1, $chunk2);  // တေှ့မြင်每个分块之间ခြားနားချက်
        if (!empty($diff)) {
            echo "ခြားနားချက်များ: \n";
            print_r($diff);
        }
    }
}
?>

output ကိုဆင်တူသည် -

 ခြားနားချက်များ:
Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)
ခြားနားချက်များ:
Array
(
    [0] => 6
    [1] => 7
    [2] => 8
    [3] => 9
)

4 ။ လက်တွေ့ကျတဲ့ applications များအတွက်အခြေအနေများ

Array_chunk နှင့် Array_Diff လုပ်ဆောင်ချက်များကိုပေါင်းစပ်ခြင်းနှင့် array_diff လုပ်ဆောင်ချက်များကိုထိရောက်စွာကိုင်တွယ်နိုင်သည်။ ဥပမာအားဖြင့်, ကြီးမားသောဒေတာအပြောင်းအလဲနဲ့တွင်ဒေတာတစ်ခုစီနှင့်အခြားအချက်အလက်အပိုင်းအစများအကြားခြားနားချက်ကိုရှာဖွေရန်အချက်အလက်များကိုလုပ်ကွက်များနှင့်နှိုင်းယှဉ်ရန်လိုအပ်သည်။ ပိတ်ဆို့ခြင်းဖြင့်မှတ်ဥာဏ်အသုံးပြုမှုဖြင့်မှတ်ဉာဏ်အသုံးပြုမှုသည်ပိုမိုထိရောက်စွာအသုံးပြုနိုင်ပြီးအချက်အလက်များကိုတစ်ချိန်တည်းတွင်မတင်ရန်ရှောင်ရှားနိုင်သည်။

အကျဉ်းချုပ်

ဤဆောင်းပါးတွင် PHP ၏ Array_chunk နှင့် Array_Diff နှင့် Array_Diff လုပ်ဆောင်မှုများကိုမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးသည်။ Array_chunk သည် ကြီးမားသော arrys များကိုသေးငယ်သောအပိုင်းပိုင်းခွဲခြင်းဖြင့်ပိုမိုကောင်းမွန်သောလုပ်ငန်းစဉ်ကိုကူညီသည်။ Array_diff သည် ကျွန်ုပ်တို့အား array နှစ်ခုအကြားကွဲပြားခြားနားမှုများကိုရှာဖွေရန်ခွင့်ပြုသည်။ ကြီးမားသောဒေတာများကိုပြုပြင်သည့်အခါဤလုပ်ဆောင်ချက်နှစ်ခု, စွမ်းဆောင်ရည်နှင့်ရိုးရှင်းသော code logic ကိုပေါင်းစပ်ခြင်းအားဖြင့်။