PHP ပရိုဂရမ်တွင် Array_chunk () သည်အလွန်လက်တွေ့ကျသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ ဒီ function မှာ parameters တွေကိုနှစ်ခုရှိတယ်, ပထမကတော့မူရင်းခင်းကျင်းမှုတစ်ခုဖြစ်ပြီးဒုတိယကတော့ပိတ်ပင်တားဆီးမှုတစ်ခုရဲ့အရွယ်အစားပါ။ ဤလုပ်ဆောင်ချက်သည်အလွန်အဆင်ပြေသော်လည်းတစ်ခါတစ်ရံတွင် Null တန်ဖိုးများပါ 0 င်သောလုပ်ကွက်များကိုထုတ်လုပ်သည်။ ၎င်းသည်အချို့သော application တစ်ခုအတွက်မသင့်တော်ပါ။ array_chunk () arrays splitting အခါအချည်းနှီးသောလုပ်ကွက်ထုတ်လုပ်မှုကိုမှရှောင်ရှားရန်? အောက်တွင်ကျွန်ုပ်တို့သည်ဘုံဖြေရှင်းချက်အချို့ကိုဆွေးနွေးပါမည်။
ပထမ ဦး စွာ Array_chunk () function ကို၏အခြေခံအသုံးပြုမှုကိုကြည့်ကြပါစို့။ ကျွန်ုပ်တို့တွင်ရိုးရှင်းသောခင်းကျင်းမှုရှိပြီးအရွယ်အစား 3 ခုထဲသို့ခွဲချင်သည်ဆိုပါစို့။
<?php
$arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
$result = array_chunk($arr, 3);
print_r($result);
?>
output ရလဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -
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
)
)
အထက်ပါကုဒ်သည်မူရင်းခင်းကျင်းမှုကိုအောင်မြင်စွာခွဲထားနိုင်အောင်အောင်မြင်စွာခွဲထားနိုင်သည်။
array_chunk () သည် သတ်မှတ်ထားသောပိတ်ပင်တားဆီးမှုအရွယ်အစားအရ Array ကိုခွဲထွက်လိမ့်မည်။ သို့သော်ခင်းပိတ်အရွယ်အစားကိုပိတ်ပင်တားဆီးမှုအရွယ်အစားဖြင့်လုံးဝကွဲပြားခြင်းမပြုနိုင်ပါကနောက်ဆုံးပိတ်ပင်တားဆီးမှုတွင်သတ်မှတ်ထားသောဒြပ်စင်များသို့မဟုတ်အချည်းနှီးသောအချည်းနှီးသောပမာဏထက်နည်းပါးသည်။ သင်အချည်းနှီးသောလုပ်ကွက်များကိုရှောင်ရှားလိုပါကအောက်ပါနည်းလမ်းများကိုသင်ပိုမိုကောင်းမွန်အောင်ပြုလုပ်နိုင်သည်။
အချည်းနှီးသောလုပ်ကွက်များကိုရှောင်ရှားရန် array ကိုခွဲထုတ်ပြီးနောက်မည်သည့်အချည်းနှီးသောလုပ်ကွက်များကို filter လုပ်ရန် array_filter () function ကိုသုံးနိုင်သည်။ ဤတွင်မည်သို့အောင်မြင်ရန်မည်သို့ဥပမာတစ်ခုဖြစ်သည်။
<?php
$arr = [1, 2, 3, 4, 5, 6, 7, 8];
$chunked = array_chunk($arr, 3);
// အသုံးပြု array_filter() အချည်းနှီးသောလုပ်ကွက်ထွက်စစ်ထုတ်ပါ
$chunked = array_filter($chunked, function($chunk) {
return !empty($chunk);
});
print_r($chunked);
?>
output ရလဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -
Array
(
[0] => Array
(
[0] => 1
[1] => 2
[2] => 3
)
[1] => Array
(
[0] => 4
[1] => 5
[2] => 6
)
[2] => Array
(
[0] => 7
[1] => 8
)
)
array_filter () အချည်းနှီးသောလုပ်ကွက်များပေါ်လာစေရန်အချည်းနှီးသောဒြပ်စင်များပါ 0 င်သောလုပ်ကွက်များကိုကျွန်ုပ်တို့ဖယ်ရှားနိုင်သည်။
သငျသညျအချည်းနှီးသောလုပ်ကွက်များကိုစစ်မအောင်မြင်လိုပါကခင်းကျင်းကိုခွဲထုတ်သည့်အခါအသုံးပြုသော block အရွယ်အစားကိုချိန်ညှိရန်စဉ်းစားပါ။ ဥပမာအားဖြင့်, သင်သည်ခင်းကျင်းမှုကိုမကွဲစေရန်အတွက်ခင်းကျင်းမှု၏အရှည်အပေါ် အခြေခံ. သင့်လျော်သောပိတ်ပင်တားဆီးမှုအရွယ်အစားကို အခြေခံ. တွက်ချက်နိုင်ပြီးနောက်ဆုံးပိတ်ပင်တားဆီးမှုသည်အချည်းနှီးဖြစ်သည်။ ဥပမာအားဖြင့်:
<?php
$arr = [1, 2, 3, 4, 5, 6, 7];
$chunkSize = 3;
$remaining = count($arr) % $chunkSize;
if ($remaining > 0) {
$chunkSize = $remaining;
}
$chunked = array_chunk($arr, $chunkSize);
print_r($chunked);
?>
ဤနည်းအားဖြင့် Code သည်အချည်းနှီးသောလုပ်ကွက်များကိုရှောင်ရှားရန်ခင်းကျင်းမှု၏အရှည်အတိုင်းနောက်ဆုံးပိတ်ပင်တားဆီးမှု၏အရွယ်အစားကိုချိန်ညှိလိမ့်မည်။
ဒီဆောင်းပါးမှာဥပမာတွေကတော့ array_chunk () function ကပြ problem နာကိုနားလည်ပြီးပြ arrays array တစ်ခုခွဲထုတ်တဲ့အခါအချည်းနှီးသောလုပ်ကွက်များထုတ်ပေးလိမ့်မယ်။ အချည်းနှီးသောလုပ်ကွက်များရှိမျိုးဆက်များကိုရှောင်ရှားရန်အချည်းနှီးသော လုပ်ကွက်များ (သို့) dynamically size ကိုချိန်ညှိခြင်း။ ကွဲပြားခြားနားသောလိုအပ်ချက်များကိုပေါ် မူတည်. array ၏အကျိုးသက်ရောက်မှုကိုမျှော်လင့်ထားသည့်အတိုင်းသေချာစေရန်သင့်လျော်သောဖြေရှင်းချက်ကိုရွေးချယ်နိုင်သည်။