PHP တွင် array_chunk function ကိုများသောအားဖြင့်ခင်းကျင်းသောသေးငယ်သော array များသို့ခွဲဝေရန်အသုံးပြုလေ့ရှိသည်။ သို့သော်ဤလုပ်ဆောင်မှုကိုပုံမှန်အားဖြင့်ခင်းကျင်းမှုအရွယ်အစားအရခွဲခြားနိုင်သည်။ အကယ်. ကျွန်ုပ်တို့သည် Associative Array ကိုသတ်မှတ်ထားသောအကွက်ကိုခွဲထုတ်လိုပါက ARRAY ၏အချက်အလက်များကိုတစ်ဆင့်ချင်းစီလုပ်ဆောင်လိုပါကအနည်းငယ်ပြုပြင်ရန်လိုအပ်သည်။
ဤဆောင်းပါးသည် array_chunk function ကို အသုံးပြု. အခြား PHP နည်းစနစ်များနှင့် တွဲဖက်. အခြား PHP နည်းစနစ်များနှင့်တွဲဖက်ရန်မည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။
Array_chunk function သည် PHP တွင်အလွန်အသုံးဝင်သောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
array_chunk(array $array, int $size, bool $preserve_keys = false): array
$ array : ခွဲဝေဖို့ခင်းကျင်း။
$ အရွယ်အစား - subarray တစ်ခုစီ၏အရွယ်အစား။
$ Present_Keys : အကယ်. မှန်ကန် ရန်သတ်မှတ်ထားပါကခင်းကျင်းမှု၏သော့အမည်ကိုထိန်းသိမ်းထားသည်။ မဟုတ်ရင် re-index ။
ဥပမာအားဖြင့်, အောက်ပါကုဒ်သည်ဒြပ်စင်နှစ်ခုပါသော subarray တစ်ခုချင်းစီတွင်ရိုးရှင်းသောနံပါတ်များကိုခွဲထားသည်။
$numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9];
$result = array_chunk($numbers, 2);
print_r($result);
ရလဒ်ရလဒ် -
Array
(
[0] => Array ( [0] => 1 [1] => 2 )
[1] => Array ( [0] => 3 [1] => 4 )
[2] => Array ( [0] => 5 [1] => 6 )
[3] => Array ( [0] => 7 [1] => 8 )
[4] => Array ( [0] => 9 )
)
Activitive Array များအတွက်ကျွန်ုပ်တို့သည်တစ်ခါတစ်ရံတွင်ခင်းကျင်းမှုရှိသည့်နယ်ပယ်တစ်ခုမှခင်းကျင်းမှုကိုခွဲထုတ်လိုကြသည်။ ဤအချိန်တွင်ကျွန်ုပ်တို့သည် Array ကိုခွဲထုတ်ရန် array_chunk ကို သုံးနိုင်သည်။ သို့သော်အခြားစစ်ဆင်ရေးများကိုခွဲထုတ်ရန်အခြေအနေများကိုသတ်မှတ်ရန်ပေါင်းစပ်ရန်လိုအပ်သည်။
အသုံးပြုသူအချက်အလက်များပါ 0 င်သော Associative Array တစ်ခုရှိသည်ဆိုပါစို့။ အသုံးပြုသူတစ် ဦး စီတွင် မြို့ လယ်တွင်ရှိနေသည်။
$users = [
['name' => 'Alice', 'city' => 'New York'],
['name' => 'Bob', 'city' => 'Los Angeles'],
['name' => 'Charlie', 'city' => 'New York'],
['name' => 'David', 'city' => 'Chicago'],
['name' => 'Eve', 'city' => 'Los Angeles'],
['name' => 'Frank', 'city' => 'Chicago']
];
ဤအချက်အလက်များကို မြို့ လယ်ကွင်းမှခွဲထုတ်ရန်ကျွန်ုပ်တို့သည်အသုံးပြုသူများကိုမြို့တော်ဖြင့်ရွေးချယ်ရန်လိုအပ်သည်။ ၎င်းကို array_reduce သို့မဟုတ်အခြားနည်းလမ်းများကို သုံး. အကောင်အထည်ဖော်နိုင်သည်။
$groupedByCity = [];
foreach ($users as $user) {
$groupedByCity[$user['city']][] = $user;
}
ဤအချိန်တွင် $ အုပ်စုလိုက် ARGARADITY Array ၏ဖွဲ့စည်းပုံမှာ -
Array
(
[New York] => Array
(
[0] => Array ( [name] => Alice [city] => New York )
[1] => Array ( [name] => Charlie [city] => New York )
)
[Los Angeles] => Array
(
[0] => Array ( [name] => Bob [city] => Los Angeles )
[1] => Array ( [name] => Eve [city] => Los Angeles )
)
[Chicago] => Array
(
[0] => Array ( [name] => David [city] => Chicago )
[1] => Array ( [name] => Frank [city] => Chicago )
)
)
နောက်တစ်မျိုးစီကို combrarrays သို့အသုံးပြုသူအချက်အလက်များကိုခွဲထုတ်ရန် array_chunk function ကိုသုံးနိုင်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်အသုံးပြုသူများကို 2 ဦး အထိပါ 0 င်သောအသုံးပြုသူများစာရင်းကိုကျွန်ုပ်တို့လိုချင်သည်။
$chunkedByCity = [];
foreach ($groupedByCity as $city => $users) {
$chunkedByCity[$city] = array_chunk($users, 2);
}
ဤအချိန်တွင် $ chunkedbycity Array ၏ဖွဲ့စည်းပုံသည်ဖြစ်လာလိမ့်မည်။
Array
(
[New York] => Array
(
[0] => Array ( [name] => Alice [city] => New York )
[1] => Array ( [name] => Charlie [city] => New York )
)
[Los Angeles] => Array
(
[0] => Array ( [name] => Bob [city] => Los Angeles )
[1] => Array ( [name] => Eve [city] => Los Angeles )
)
[Chicago] => Array
(
[0] => Array ( [name] => David [city] => Chicago )
[1] => Array ( [name] => Frank [city] => Chicago )
)
)
Array_chunk ကိုသုံးပြီးခင်းကျင်းမှုကိုကွက်ကွက်ကွင်းကွင်းကိုခွဲခြားပြီးတာနဲ့ဒီ subarrays ကိုတစ်ဆင့်ပြီးအောင်လုပ်နိုင်ပါတယ်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်မြို့တစ်မြို့စီ၏အချက်အလက်များကို ဖြတ်. သုံးစွဲသူအချက်အလက်များကို subarray တစ်ခုစီအတွက်အသုံးပြုသူအချက်အလက်များကိုထုတ်ယူခြင်းကဲ့သို့သောလုပ်ငန်းများကိုလုပ်ဆောင်နိုင်သည်။
foreach ($chunkedByCity as $city => $chunks) {
echo "City: $city\n";
foreach ($chunks as $chunk) {
echo "Users:\n";
foreach ($chunk as $user) {
echo "- {$user['name']}\n";
}
}
}
output ရလဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -
City: New York
Users:
- Alice
- Charlie
City: Los Angeles
Users:
- Bob
- Eve
City: Chicago
Users:
- David
- Frank
ကျွန်ုပ်တို့တွင် URL သတင်းအချက်အလက်များပါ 0 င်သော array တစ်ခုရှိပြီး URL ရှိ domain name (ဥပမာ M66.net ) တွင် domain name အရခွဲခြားရန်နှင့်လုပ်ငန်းစဉ်ကိုခွဲထုတ်လိုသည်ဆိုပါစို့။ ဤတွင်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။
Processing URLs:
- http://m66.net/page1
- http://m66.net/page2