လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> array_chunk သို့ဒုတိယ parameter ကိုမည်သို့သတ်မှတ်ရမည်နည်း

array_chunk သို့ဒုတိယ parameter ကိုမည်သို့သတ်မှတ်ရမည်နည်း

M66 2025-04-25

PHP တွင် array_chunk () function ကို array ကိုသေးငယ်တဲ့သေးငယ်တဲ့ arrays သို့ခွဲရန်အသုံးပြုသည်။ Array_chunk () ကိုခေါ်သည့်အခါဒုတိယ parameter သည်သေးငယ်သော array တစ်ခုစီအတွက်ဒြပ်စင်အရေအတွက်ကိုဆုံးဖြတ်သည်။ ဒီဒုတိယ parray ရဲ့အရှည်အရဒီဒုတိယ parameter ကိုကျွန်တော်တို့ပြောင်းလဲချင်ရင်ငါတို့ဘာလုပ်သင့်သလဲ။

ဤဆောင်းပါးသည် array_chunk () array's's of array_chunk () ၏ဒုတိယ parameter ကိုမည်သို့ပြောင်းလဲအောင်လုပ်ရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။

1 ။ အခြေခံ array_chunk function ကိုသုံးပါ

array_chunk () ၏အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -

 array_chunk(array $array, int $size, bool $preserve_keys = false): array
  • $ array : input array ။

  • $ အရွယ်အစား - split ခင်းကျင်းမှုတစ်ခုစီ၏အရွယ်အစား။

  • $ Presentation_Keys : မူရင်းခင်းကျင်းခြင်း၏သော့များကိုထိန်းသိမ်းရန်ဖြစ်စေ (ပုံမှန်အားဖြင့် မှားယွင်း သည်) ။

ဥပမာအားဖြင့်:

 $array = [1, 2, 3, 4, 5, 6];
$chunked = array_chunk($array, 2);
print_r($chunked);

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

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

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

    [2] => Array
        (
            [0] => 5
            [1] => 6
        )
)

2 ။ dynamically ဒုတိယ parameter သည်

တခါတရံတွင်ကျွန်ုပ်တို့သည် array အရှည်အပေါ် အခြေခံ. subarray ၏အရွယ်အစားတစ်ခုစီ၏အရွယ်အစားကိုမှန်ကန်စွာဆုံးဖြတ်လိုသည်။ ဥပမာအားဖြင့်, Array ကပိုကြာလျှင် subarray တစ်ခုချင်းစီကိုဒြပ်စင်များများဆံ့စေလိုသည်။ အကယ်. ခင်းကျင်းမှုသည်သေးငယ်သောအရာတစ်ခုစီသည်နိမ့်ကျသောဒြပ်စင်များပါ 0 င်သည်။ ၎င်းကိုအောက်ပါနည်းလမ်းများဖြင့်ကျွန်ုပ်တို့အောင်မြင်နိုင်သည်။

 function dynamicChunkSize($array) {
    // array အရှည်ရယူပါ
    $length = count($array);
    
    // Array ၏အရှည်အရသိရသည် chunking အရွယ်အစားကိုသတ်မှတ်ပါ,အရှည်ထက်လျော့နည်းကြောင်းယူဆ 10 အချိန်ဌာနခွဲ 2 အပိုင်းအစ,ထက်သာ။ ကြီးမြတ်အရှည် 10 အချိန်ဌာနခွဲ 3 အပိုင်းအစ
    if ($length < 10) {
        $size = 2;
    } else {
        $size = ceil($length / 3); // 如果数组ထက်သာ။ ကြီးမြတ်အရှည် 10,၎င်းကိုသုံးပုံတစ်ပုံခွဲခြားထားသည်
    }
    
    return $size;
}

$array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
$size = dynamicChunkSize($array);
$chunked = array_chunk($array, $size);
print_r($chunked);

အထက်ပါဥပမာတွင်ကျွန်ုပ်တို့သည် array အရှည်အပေါ် အခြေခံ. subarray ၏အရွယ်အစားကို အခြေခံ. dynamramice dynamicchunksize () function dynamicchunkize () ကိုသတ်မှတ်သည်။ ဥပမာအားဖြင့်, array အရှည်သည် 10 ထက်နည်းလျှင်, သေးငယ်တဲ့ array တစ်ခုစီ၏အရွယ်အစားကို 2 အထိသတ်မှတ်; အကယ်. Array အရှည်သည် 10 ထက်ကြီးပါကအသေးအဖွဲခင်းတစ်ခုစီ၏အရွယ်အစားကိုခင်းကျင်းမှု၏သုံးပုံတစ်ပုံအထိသတ်မှတ်ထားသည်။

3 ။ chunking အရွယ်အစားကို setting များအတွက်ပိုမို application အခြေအနေများ

array_chunk () ၏ဒုတိယ parameter ကို dynamically ကိုချိန်ညှိခြင်း () တိကျတဲ့အခြေအနေများအတွက်အလွန်သင့်လျော်သည်။ ဥပမာအားဖြင့်, paging အပေါ်အချက်အလက်များကိုပြသသည့်အခါဒေတာစုစုပေါင်းပမာဏအပေါ် အခြေခံ. စာမျက်နှာတစ်ခုချင်းစီတွင်ဖော်ပြထားသောဒေတာအရေအတွက်ကိုကျွန်ုပ်တို့ပိုမိုတွက်ချက်နိုင်သည်။ ဤတွင် Pagination ၏ဥပမာတစ်ခုဖြစ်သည်။

 function getPaginationChunks($array, $totalItems, $itemsPerPage) {
    $totalPages = ceil($totalItems / $itemsPerPage);
    
    $chunks = [];
    for ($i = 0; $i < $totalPages; $i++) {
        $start = $i * $itemsPerPage;
        $chunks[] = array_slice($array, $start, $itemsPerPage);
    }
    
    return $chunks;
}

$array = range(1, 100);  // ဒီတစ်ခုထည့်သွင်းသည်ဟုယူဆပါ100ဒြပ်စင်၏ခင်းကျင်း
$totalItems = count($array);
$itemsPerPage = 10;
$pagination = getPaginationChunks($array, $totalItems, $itemsPerPage);

print_r($pagination);

ဒီဥပမာမှာကျွန်တော်တို့ဟာ array_slice () ကို ပုံဆောင် function ကိုပုံဖော်ဖို့သုံးတယ်။ ကျွန်ုပ်တို့သည်အချက်အလက်စုစုပေါင်းပမာဏနှင့်စာမျက်နှာတစ်ခုချင်းစီ၏ဒေတာအစုအရေအတွက်ကို အခြေခံ. ခင်းကျင်းမှုကို အခြေခံ. ခင်းကျင်းခြင်းနှင့်စာမျက်နှာတစ်ခုစီ၏အချက်အလက်များကိုပြန်ပို့ပါ။

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

array_chunk () ၏ဒုတိယ parameter ကို dynametic အရ segrunk segmentation ကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်သော segmentation ကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်ရှိရန်ကူညီနိုင်သည်။ ခင်းကျင်းမှု၏အရှည်ကိုတွက်ချက်ခြင်းဖြင့် subarray အရွယ်အစားကိုပြောင်းလဲခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ကွဲပြားခြားနားသောလိုအပ်ချက်များကိုအလွယ်တကူဖြည့်ဆည်းပေးနိုင်သည်။