လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> array_colum ကိုသုံးတဲ့အခါအညွှန်းကိန်းသော့မိတ္တူပွားတွေထပ်ခါတလဲလဲတဲ့အခါဘာဖြစ်သွားသလဲ။

array_colum ကိုသုံးတဲ့အခါအညွှန်းကိန်းသော့မိတ္တူပွားတွေထပ်ခါတလဲလဲတဲ့အခါဘာဖြစ်သွားသလဲ။

M66 2025-04-28

PHP တွင် array_colum () သည်သတ်မှတ်ထားသောကော်လံတစ်ခုမှဒေတာများကို multidimensional array မှထုတ်ယူခွင့်ပြုသည့်အလွန်အသုံးများသော function တစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်မှုသည်အထူးသဖြင့်ဒေတာဘေ့စ်မေးမြန်းမှုရလဒ်များသို့မဟုတ်ဖွဲ့စည်းထားသောအချက်အလက်များနှင့်ဆင်တူသည့်အရေးပါသောရလဒ်များသို့မဟုတ်ခင်းကျင်းရန်အတွက်သင့်လျော်သည်။ ကော်လံ၏သော့ကိုသတ်မှတ်ခြင်းအားဖြင့် Array_colum () ကို array မှအချက်အလက်အားလုံးကိုအလွယ်တကူဖြည်ချနိုင်သည်။

သို့သော် developer များစွာသည်ပြ a နာတစ်ခုနှင့်ကြုံတွေ့ရနိုင်သည်။ Array_colum () ကိုအသုံးပြုသည့်အခါခင်းကျင်းမှုတစ်ခု၏သော့ချက်များသော့များသည်ထပ်ခါတလဲလဲဖြစ်ခဲ့လျှင်ဘာဖြစ်မည်နည်း။ ဒီဆောင်းပါးမှာဒီပြ problem နာကိုလေ့လာပြီးဖြေရှင်းနည်းတွေပေးမယ်။

array_column () မှနိဒါန်း ()

array_colum () function ကို၏အခြေခံအသုံးပြုမှုမှာအောက်ပါအတိုင်းဖြစ်သည် -

 array_column(array $input, $column_key, $index_key = null): array
  • $ input : input နှစ်ခုရှုထောင်ခင်းကျင်း။

  • $ column_ey : ကော်လံ၏အမည်သော့အမည်ကိုထုတ်ယူသို့မဟုတ်ကော်လံ၏အညွှန်းကိန်း။

  • $ index_key : optional ကို။ array ကိုပြန်ပို့ပေးသောအညွှန်းကိန်းကိုသင်သတ်မှတ်နိုင်သည်။

ဤလုပ်ဆောင်ချက်သည်ပေးထားသောကော်လံ၏အဓိက သောင်း စာကို အခြေခံ. အချက်အလက်များကို အခြေခံ. အချက်အလက်များကိုထုတ်ယူပြီး array အသစ်တစ်ခုကိုပြန်ပို့သည်။ $ index_key ကို သတ်မှတ်ထားပါကပြန်လည်ရောက်ရှိသည့် array သည်ဤသော့ကိုအညွှန်းအဖြစ်သုံးလိမ့်မည်။

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

 $data = [
    ['id' => 1, 'name' => 'Alice', 'age' => 23],
    ['id' => 2, 'name' => 'Bob', 'age' => 24],
    ['id' => 3, 'name' => 'Charlie', 'age' => 25],
];

$names = array_column($data, 'name'); // ['Alice', 'Bob', 'Charlie']

အညွှန်းကိန်းသော့ပုံတူ၏အခြေအနေ

$ index_Key Parameter ကိုသတ်မှတ်သောအခါ array_colum () array_colum () array အသစ်တစ်ခုကိုအညွှန်းကိန်းအဖြစ် အသုံးပြု. ခင်းကျင်း အသစ်တစ်ခုကိုပြန်ပို့သည်။ အကယ်. input array တွင် $ index_key ခလုတ်ထပ်ခါတလဲလဲဖြစ်လျှင်နောက်ဆက်တွဲတန်ဖိုးသည်ယခင်တန်ဖိုးကို overwres ။ ဤအခြေအနေသည်ဖွံ့ဖြိုးဆဲများကိုမကြာခဏရှုပ်ထွေးစေပြီးအချို့အချက်အလက်များဆုံးရှုံးသွားနိုင်သည်။

ဥပမာတစ်ခုကိုကြည့်ရအောင်။

 $data = [
    ['id' => 1, 'name' => 'Alice', 'age' => 23],
    ['id' => 2, 'name' => 'Bob', 'age' => 24],
    ['id' => 1, 'name' => 'Charlie', 'age' => 25],  // id ပြန်ဆို
];

$result = array_column($data, 'name', 'id');

print_r($result);

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

 Array
(
    [1] => Charlie
    [2] => Bob
)

အထက်ဖော်ပြပါကုဒ်များသည် ID key ၏ပုံတူပွားမှုကြောင့် ( ID တန်ဖိုး 1 သည် 1) တွင် "Charlie" ကို သာပြန်လာသောခင်းကျင်းမှုတွင်သာသိမ်းဆည်းထားပြီးမူရင်း "အဲလစ်" တန်ဖိုးကို overwrite လုပ်ထားတယ်။ ဒီဟာမိတ္တူပွားများကြုံတွေ့ရသည့်အခါ array_column () မည်သို့ပြုမူသည်။

ထပ်တူအညွှန်းကိန်းသော့ကိုဘယ်လိုကိုင်တွယ်ရမလဲ။

အချို့ဖြစ်ရပ်များတွင်ကျွန်ုပ်တို့သည်ထပ်တူထပ်ကိန်းအားလုံးကိုထပ်ခါတလဲလဲမလုပ်ဘဲ၎င်းတို့ကိုထပ်တူထပ်မျှသိမ်းဆည်းထားလိုပေမည်။ ဤအချိန်တွင်ကျွန်ုပ်တို့သည်ဤအခြေအနေကိုကိုင်တွယ်ရန်လှည့်ကွက်အချို့ကိုသုံးနိုင်သည်။

1 ။ array_column () ကိုအသုံးပြုပြီးနောက်ထပ်ခါတလဲလဲညွှန်းကိန်းကိုပြန်လည်သုံးသပ်ပါ။

လွယ်ကူသောနည်းလမ်းမှာ array_column () function ကိုပြန်လည်လုပ်ဆောင်ပြီးနောက်ထပ်တူညွှန်းကိန်းကိုကိုယ်တိုင်လုပ်ဆောင်ရန်ဖြစ်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်တန်ဖိုးများကိုတူညီသောအညွှန်းကိန်းတစ်ခုနှင့်အတူတူပေါင်းစည်းရန် array_myme () ကို သုံးနိုင်သည်။

 $data = [
    ['id' => 1, 'name' => 'Alice', 'age' => 23],
    ['id' => 2, 'name' => 'Bob', 'age' => 24],
    ['id' => 1, 'name' => 'Charlie', 'age' => 25],  // id ပြန်ဆို
];

$column = array_column($data, 'name', 'id');

// 处理ပြန်ဆို索引,确保所有ပြန်ဆို的值被保留
$column = array_map(function($v) {
    return is_array($v) ? $v : [$v];
}, $column);

print_r($column);

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

 Array
(
    [1] => Array
        (
            [0] => Alice
            [1] => Charlie
        )

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

ဤဥပမာတွင်တန်ဖိုးတစ်ခုစီကိုတန်ဖိုးထားမှုကိုထိန်းသိမ်းထားနိုင်သည့် array_map () ကို သုံးသည်။

2 ။ ထပ်တူထပ်မျှတန်ဖိုးများကိုပေါင်းစည်းရန် array_mymegge ကို သုံးပါ

အကယ်. ကျွန်ုပ်တို့သည်ထပ်တူတန်ဖိုးများကို array ထဲသို့ပေါင်းစည်းလိုပါကကျွန်ုပ်တို့လည်းအရေးယူခြင်းအပေါ်ခြယ်လှယ်ခြင်းဖြင့်ပြုလုပ်နိုင်သည်။ ဥပမာအားဖြင့်, အောက်ပါကုဒ်သည်ထပ်တူညွှန်းကိန်းများကိုပေါင်းစည်းရန် array_mymegge ကို အသုံးပြုသည်။

 $data = [
    ['id' => 1, 'name' => 'Alice', 'age' => 23],
    ['id' => 2, 'name' => 'Bob', 'age' => 24],
    ['id' => 1, 'name' => 'Charlie', 'age' => 25],  // id ပြန်ဆို
];

$result = [];
foreach ($data as $item) {
    $result[$item['id']][] = $item['name'];
}

print_r($result);

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

 Array
(
    [1] => Array
        (
            [0] => Alice
            [1] => Charlie
        )

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

ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်ထပ်တူညွှန်းကိန်းများကိုမည်သို့ကိုင်တွယ်ဖြေရှင်းရမည်ကိုကိုယ်တိုင်ထိန်းချုပ်နိုင်သည်။

အကျဉ်းချုပ်

Array_column () သည်သတ်မှတ်ထားသောကော်လံတစ်ခုမှအချက်အလက်များကိုခင်းကျင်းခြင်းမှထုတ်ယူနိုင်သည့်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ သို့သော်ခင်းကျင်းအတွင်းရှိအညွှန်းကိန်းများထပ်တူထပ်မျှရှိသည့်အခါနောက်ဆက်တွဲတန်ဖိုးများသည်ယခင်တန်ဖိုးများကိုပြန်လည်ရေးသားခြင်းကိုရေးသားခြင်း, ဤအခြေအနေကိုကိုင်တွယ်ရန်ကျွန်ုပ်တို့သည်ထပ်တူထပ်ဆင့်တန်ဖိုးများကိုပေါင်းစည်းခြင်းသို့မဟုတ်ရလဒ်ကိုထပ်မံလုပ်ဆောင်ရန် Array function ကိုအသုံးပြုခြင်းကဲ့သို့သောကွဲပြားခြားနားသောချဉ်းကပ်မှုများကိုပြုလုပ်နိုင်သည်။ တိကျသောလိုအပ်ချက်များကိုပေါ် မူတည်. ထပ်တလဲလဲအညွှန်းကိန်း၏ပြ problem နာကိုဖြေရှင်းရန်မှန်ကန်သောနည်းဗျူဟာကိုရွေးချယ်ခြင်းသည် code ကိုပိုမိုခိုင်မာသည့်နှင့်ယုံကြည်စိတ်ချရမှုကိုပိုမိုခိုင်မာစေနိုင်သည်။