PHP တွင် array_column function သည် multidimensional array မှအချက်အလက်များကိုသတ်သတ်မှတ်မှတ်ကော်လံတစ်ခုမှအချက်အလက်များကိုထုတ်ယူနိုင်သည့်အလွန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ များသောအားဖြင့် array_column သည်နှစ်ရှုထောင်ခင်းကျင်းမှုမှကော်လံတစ်ခု၏တန်ဖိုးများအားလုံးကိုထုတ်ယူရန်အသုံးပြုသည်။ နောက်တစ်ခုကဘယ်လိုအောင်မြင်ရမယ်ဆိုတာငါရှင်းပြပါလိမ့်မယ်။
ပထမ ဦး စွာ Array_column function ၏အခြေခံအသုံးပြုမှုကိုအတိုချုပ်ပြန်လည်သုံးသပ်ကြပါစို့။ ၎င်း၏ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
array_column(array $array, mixed $column_key, mixed $index_key = null): array
$ array : input multi-dimensional array ။
$ column_key : ကော်လံ၏သော့ကိုထုတ်ယူရန် (ကော်လံအမည်သို့မဟုတ်အညွှန်းကိန်းဖြစ်နိုင်သည်) ။
$ index_key (optional) - element တစ်ခုချင်းစီကို array တစ်ခုချင်းစီကိုပြန်ပို့ရန်အညွှန်းကိန်းအဖြစ်အသုံးပြုသောကော်လံကိုသတ်မှတ်ပါ။
မင်းမှာဒီလိုမျိုးနှစ်ဖက်ရှုထောင့်ခင်းကျင်းမှုရှိတယ်ဆိုပါစို့။
$people = [
['id' => 1, 'name' => 'John', 'age' => 25],
['id' => 2, 'name' => 'Jane', 'age' => 30],
['id' => 3, 'name' => 'Tom', 'age' => 35]
];
နာမည် ကော်လံများကိုထုတ်ယူခြင်းကဲ့သို့သောသတ်သတ်မှတ်မှတ်ကော်လံများကိုထုတ်ယူရန် array_column ကို သုံးနိုင်သည်။
$names = array_column($people, 'name');
print_r($names);
output ရလဒ် -
Array
(
[0] => John
[1] => Jane
[2] => Tom
)
အကယ်. ကော်လံ၏အညွှန်းနှင့်တန်ဖိုးပေါင်းစပ်မှုကိုဖြည့်ဆည်းလိုပါကကျွန်ုပ်တို့သည်အနည်းငယ်ပြုပြင်မွမ်းမံခြင်းဖြင့်ပြုလုပ်နိုင်သည်။
Extract Array တွင်ကော်လံအညွှန်းကိန်းနှင့်တန်ဖိုးများကိုပေါင်းစပ်ရန်စိတ်ကြိုက်ပြုလုပ်ရန်အတွက်ကျွန်ုပ်တို့သည်ပစ်မှတ်ထားကော်လံကိုထုတ်ယူရန်အတွက် array_column function ကိုသုံးနိုင်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည် အမည် ကော်လံနှင့်သက်ဆိုင်ရာ ID ဖြင့်အညွှန်းကိန်းကိုထုတ်ယူနိုင်ပြီးနောက်ဆုံးတွင် ID တွင်ရေးထားသော array output ကိုနှင့် အမည် key တန်ဖိုးအတွဲများထုတ်ပေးသည်။
$people = [
['id' => 1, 'name' => 'John', 'age' => 25],
['id' => 2, 'name' => 'Jane', 'age' => 30],
['id' => 3, 'name' => 'Tom', 'age' => 35]
];
// ထုတ်ပြန် id နှင့် name ကော်လံပေါင်းစပ်
$result = array_column($people, 'name', 'id');
// ရလဒ်ရလဒ်
print_r($result);
Array
(
[1] => John
[2] => Jane
[3] => Tom
)
ဤဥပမာတွင် array_column ($ လူများ, အမည် ',' ID ',' ID ') ကို ထုတ်ယူပြီး ID ဟုခေါ်သော and နှင့် array အသစ်တစ်ခုကိုထုတ်ပေးသည်။ ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည် ID နှင့် နာမည် တစ်ခုရရှိသည်။
အကယ်. ကျွန်ုပ်တို့သည်ခင်းကျင်းမှုတစ်ခုမှကော်လံမျိုးစုံပေါင်းစပ်ပေါင်းစည်းရန်လိုအပ်ပါက array_column သည် လိုအပ်ချက်များနှင့်တိုက်ရိုက် တွေ့ဆုံ. မရပါ။ ဤအချိန်တွင်၎င်းကိုထုံးစံအတိုင်းလုပ်ဆောင်မှုများမှတစ်ဆင့်အကောင်အထည်ဖော်နိုင်သည်။ ဥပမာအားဖြင့်, ကျွန်ုပ်တို့သည် ID နှင့် အသက်အရွယ် ကော်လံများကို ID တစ်ခုအဖြစ်ပေါင်းစပ်ထားပြီးအညွှန်းကိန်းတစ်ခုနှင့်အတူ it array ထဲသို့ထည့်သွင်းလိုပါက တန်ဖိုး နှင့် အသက်အရွယ်များ ပါ 0 င်သည်။
$people = [
['id' => 1, 'name' => 'John', 'age' => 25],
['id' => 2, 'name' => 'Jane', 'age' => 30],
['id' => 3, 'name' => 'Tom', 'age' => 35]
];
$result = [];
foreach ($people as $person) {
$result[$person['id']] = ['name' => $person['name'], 'age' => $person['age']];
}
// ရလဒ်ရလဒ်
print_r($result);
Array
(
[1] => Array
(
[name] => John
[age] => 25
)
[2] => Array
(
[name] => Jane
[age] => 30
)
[3] => Array
(
[name] => Tom
[age] => 35
)
)
ဤဥပမာတွင်ကျွန်ုပ်တို့သည်ခင်းကျင်းမှုများကိုလက်ဖြင့်ပြုလုပ်ပြီး id array အသစ်တစ်ခုကိုတည်ဆောက်ခြင်းနှင့် နာမည် နှင့် အသက်သည် တန်ဖိုးများပေါင်းစပ်မှုပေါင်းစပ်ထားသည့်နေရာအသစ်တစ်ခုကိုတည်ဆောက်သည်။
array_column function သည်နှစ်ခုကိုနှစ်ရှုထောင်ခင်းကျင်းမှုမှကော်လံတစ်ခုမှအချက်အလက်များကိုထုတ်ယူနိုင်သည့်အလွန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ ပိုမိုရှုပ်ထွေးသောလိုအပ်ချက်များအတွက်ကော်လံအညွှန်းများနှင့်တန်ဖိုးများပေါင်းစပ်ခြင်းသို့မဟုတ်ကော်လံမျိုးစုံပေါင်းစပ်ခြင်းကဲ့သို့သောပိုမိုရှုပ်ထွေးသောလိုအပ်ချက်များအတွက်ကျွန်ုပ်တို့သည်၎င်းကိုပြင်ဆင်ခြင်းနှင့်အပြောင်းအလဲနဲ့နည်းလမ်းကိုစိတ်ကြိုက်ပြုပြင်ခြင်းဖြင့်၎င်းကိုကျွန်ုပ်တို့အောင်မြင်နိုင်သည်။ Array_column နှင့်ရိုးရှင်းသောခင်းကျင်းဆင်ခြင်းများကိုပြောင်းလွယ်ပြင်လွယ်စွာအသုံးပြုခြင်းဖြင့်သင်သည်အမျိုးမျိုးသောဒေတာထုတ်ယူခြင်းနှင့်ပုံစံချခြင်းလုပ်ငန်းများကိုအလွယ်တကူအကောင်အထည်ဖော်နိုင်သည်။
ဤဆောင်းပါးသည် array_column function ကိုမည်သို့အသုံးပြုရမည်ကိုပိုမိုနားလည်သဘောပေါက်ရန်နှင့်ခင်းကျင်းမှုမှထုတ်ယူထားသောအချက်အလက်များကိုစိတ်ကြိုက်ပြင်ဆင်ခြင်းကိုပိုမိုနားလည်သဘောပေါက်ရန်မျှော်လင့်ပါသည်။ သင့်တွင်မေးခွန်းများရှိပါကမေးခွန်းများမေးပါ။