PHP တွင် Array_chunk နှင့် array_column သည် arrays တွင်ပြောင်းလွယ်ပြင်လွယ်စစ်ဆင်ရေးများပြုလုပ်နိုင်ရန်အတွက်အလွန်အသုံးဝင်သောလုပ်ဆောင်ချက်နှစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်ချက်နှစ်ခုကိုကျိုးကြောင်းဆီလျော်စွာအသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်နှစ်ဖက်ရှိရှုထောင့်ခင်းကျင်းမှုများကိုကော်လံများဖြင့်ခွဲထုတ်ခြင်းအားအလွယ်တကူအကောင်အထည်ဖော်နိုင်သည်။ ဤဆောင်းပါးသည်ဤရည်မှန်းချက်အောင်မြင်ရန် Array_Chunk နှင့် Array_coln ကို ပေါင်းစပ်ရန်မည်သို့အသေးစိတ်ဖော်ပြထားသည်။
Array_colum : ဒီ function ကို multidimensional array ကနေကော်လံရဲ့တန်ဖိုးကိုထုတ်ယူနိုင်ပါတယ်။ ၎င်း၏အသုံးများသောအသုံးပြုမှုမှာသတ်မှတ်ထားသောကော်လံ၏တန်ဖိုးများအားလုံးကိုကိုယ်တိုင်ဖြည့်ဆည်းခြင်းမရှိဘဲရယူရန်ဖြစ်သည်။
array_column(array $array, mixed $column_key, mixed $index_key = null)
array_chunk : ဒီ function ကို array တစ်ခုစီကိုသေးငယ်တဲ့ array တစ်ခုစီကိုခွဲခြားထားတယ်။ ၎င်းသည်ကြီးမားသောခင်းကျင်းမှုများကိုထိရောက်စွာခွဲထုတ်ရန်ခွင့်ပြုသည်။
array_chunk(array $array, int $size, bool $preserve_keys = false)
ကျွန်ုပ်တို့တွင်ဒြပ်စင်တစ်ခုစီတွင်ကော်လံများစွာအတွက်အချက်အလက်များပါ 0 င်သည်ဆိုပါစို့။ အကယ်. ကော်လံတစ်ခုကိုထုတ်ယူလိုပါကကော်လံ၏ဒေတာများကိုအရွယ်အစားအမျိုးမျိုးဖြင့်ခွဲထားလိုပါကအရွယ်အစားတစ်ခုအရအညီ, array_column နှင့် array_chunk ပေါင်းစပ်မှုကိုသုံးနိုင်သည်။
ကျွန်ုပ်တို့တွင်အောက်ပါနှစ်ရှုထောင်ခင်းကျင်းမှုရှိသည်ဆိုပါစို့။
$data = [
['id' => 1, 'name' => 'Tom', 'age' => 28],
['id' => 2, 'name' => 'Jerry', 'age' => 30],
['id' => 3, 'name' => 'Mickey', 'age' => 25],
['id' => 4, 'name' => 'Donald', 'age' => 35],
['id' => 5, 'name' => 'Goofy', 'age' => 40],
['id' => 6, 'name' => 'Pluto', 'age' => 22]
];
အကယ်. ကျွန်ုပ်တို့သည် အမည် ကော်လံကိုသာထုတ်ယူလိုပါက 2 ဒြပ်စင် 2 ခုစီကိုခွဲထုတ်လိုပါကအောက်ပါကုဒ်ကိုသုံးနိုင်သည်။
// ထုတ်ပြန် 'name' စာရင်း
$names = array_column($data, 'name');
// တစ်ခုချင်းစီကိုနှိပ်ပါ 2 elements split
$chunkedNames = array_chunk($names, 2);
// output split ခင်းကျင်း
print_r($chunkedNames);
ရလဒ်ရလဒ် -
Array
(
[0] => Array
(
[0] => Tom
[1] => Jerry
)
[1] => Array
(
[0] => Mickey
[1] => Donald
)
[2] => Array
(
[0] => Goofy
[1] => Pluto
)
)
လက်တွေ့ကျသောအပလီကေးရှင်းများတွင်ပိုမိုရှုပ်ထွေးသော arrays များကိုခွဲခြားရန်လိုအပ်သည်။ ကျွန်ုပ်တို့တွင် URL လိပ်စာများစာရင်းရှိသည်ဆိုပါစို့။ URL တစ်ခုစီ၏အဓိကဒိုမိန်းအမည်အပိုင်းကိုထုတ်ယူလိုပြီးဒိုမိန်းအမည် 3 ခုတိုင်းကိုခွဲထုတ်လိုသည်ဆိုပါစို့။ မူရင်းဒေတာအောက်ပါအတိုင်းဖြစ်သည်ဟုယူဆပါ -
$data = [
['url' => 'http://www.m66.net/page1', 'other' => 'data1'],
['url' => 'http://www.m66.net/page2', 'other' => 'data2'],
['url' => 'http://www.m66.net/page3', 'other' => 'data3'],
['url' => 'http://www.m66.net/page4', 'other' => 'data4'],
['url' => 'http://www.m66.net/page5', 'other' => 'data5'],
['url' => 'http://www.m66.net/page6', 'other' => 'data6']
];
URLs အားလုံးကို extract လုပ်ရန် array_column ကို အသုံးပြု. Parse_Url function ကို သုံး. Domain Name ကိုအုပ်စုသုံးစုခွဲရန် array_chunk ကို သုံးပါ။
// ထုတ်ပြန် 'url' စာရင်း
$urls = array_column($data, 'url');
// တစ်ခုချင်းစီကိုရယူပါ URL အဓိကဒိုမိန်းအမည်အပိုင်း
$domains = array_map(function($url) {
return parse_url($url, PHP_URL_HOST);
}, $urls);
// တစ်ခုချင်းစီကိုနှိပ်ပါ 3 ဒိုမိန်းအမည် split
$chunkedDomains = array_chunk($domains, 3);
// output split domain name array
print_r($chunkedDomains);
ရလဒ်ရလဒ် -