လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> array_colnolum ကို foreach ထက် extract လုပ်တဲ့အခါပိုပြီးထိရောက်သလား။

array_colnolum ကို foreach ထက် extract လုပ်တဲ့အခါပိုပြီးထိရောက်သလား။

M66 2025-05-11

PHP တွင် Array_column နှင့် foreach loops များသည် array တွင်သီးခြားတန်ဖိုးများသို့မဟုတ်အရာဝတ်ထုဂုဏ်သတ္တိများကိုထုတ်ယူရန်အတွက်အသုံးများသောနည်းလမ်းနှစ်ခုဖြစ်သည်။ ဤနည်းလမ်းနှစ်ခုသည်အလားတူလုပ်ဆောင်ချက်များကိုအကောင်အထည်ဖော်ရန်မကြာခဏအသုံးပြုသော်လည်းစွမ်းဆောင်ရည်ကွဲပြားခြားနားသည်။ ထို့ကြောင့် array_colum သည် foreach ထက်ပိုမိုထိရောက်သောလား။ ဤဆောင်းပါးတွင်ကျွန်ုပ်တို့သည်စွမ်းဆောင်ရည်ကွဲပြားခြားနားမှုများနှင့်သက်ဆိုင်သောအခြေအနေများကိုအသေးစိတ်လေ့လာကြည့်ရှုပါမည်။

1 ။ array_column နှင့် foreach ၏အခြေခံအသုံးပြုမှု

1.1 အရာဝတ်ထုဂုဏ်သတ္တိများကို extract လုပ်ရန် array_colnum ကို သုံးပါ

array_column function သည် PHP တွင်တည်ဆောက်ထားသောအလွန်အသုံးဝင်သောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ ဥပမာအားဖြင့်, ကျွန်ုပ်တို့တွင်အောက်ပါအရာဝတ်ထုများရှိသည်ဆိုပါစို့။

 $objects = [
    (object) ['id' => 1, 'name' => 'Alice'],
    (object) ['id' => 2, 'name' => 'Bob'],
    (object) ['id' => 3, 'name' => 'Charlie']
];

// အသုံးပြု array_column အားလုံးကိုထုတ်ယူပါ 'name' ဉစ်စာပစ္စည်းများ
$names = array_column($objects, 'name');
print_r($names);

output ကိုဖြစ်လိမ့်မည်:

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

Array_colum သည် parameters နှစ်ခုကိုလက်ခံရရှိသည်။ ပထမတစ်ခုမှာခင်းကျင်းမှုတစ်ခုဖြစ်ပြီးဒုတိယမှာထုတ်ယူရန်လိုအပ်သည့်လယ်ကွင်းအမည်ဖြစ်သည်။ အထူးသဖြင့်ကြီးမားသောခင်းကျင်းမှုများကိုကိုင်တွယ်သောအခါ၎င်း၏ပြည်တွင်းအကောင်အထည်ဖော်မှုသည်အလွန်ထိရောက်စေသည်။

1.2 Outeach Object Office Properties ကိုထုတ်ယူပါ

နောက်ထပ်ဘုံနည်းတစ်နည်းမှာ foreach foreach loop ကို အသုံးပြု. Array မှတစ်ဆင့် array မှတစ်ဆင့်ပြုလုပ်ရန်ဖြစ်သည်။ အရာဝတ်ထုတစ်ခုစီ၏ပိုင်ဆိုင်မှုတန်ဖိုးများကိုထုတ်ယူရန်ဖြစ်သည်။ ဥပမာအားဖြင့်:

 $objects = [
    (object) ['id' => 1, 'name' => 'Alice'],
    (object) ['id' => 2, 'name' => 'Bob'],
    (object) ['id' => 3, 'name' => 'Charlie']
];

$names = [];
foreach ($objects as $object) {
    $names[] = $object->name;
}
print_r($names);

output ရလဒ်သည် array_colum နှင့်အတူတူပင်ဖြစ်သည်။

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

Forach Loop သည်အရာဝတ်ထုတစ်ခုစီ၏ attribute တန်ဖိုးများကိုထုတ်ယူရန်လက်စွဲယုတ္တိဗေဒလိုအပ်သည်။ code သည်များသောအားဖြင့်ကြာရှည်သော်လည်းကောင်းမွန်သောပြောင်းလွယ်ပြင်လွယ်ရှိသည်။

2 ။ စွမ်းဆောင်ရည်ကွဲပြားခြားနားမှု

2.1 array_column ၏စွမ်းဆောင်ရည်အားသာချက်များ

Array_column သည် PHP တွင်အကောင်အထည်ဖော်သည့်လုပ်ဆောင်မှုတစ်ခုဖြစ်သည်။ C တွင်ရေးသားထားသောကြောင့် C တွင်ရေးသားထားသောကြောင့်အကြီးအကျယ်ခင်းကျင်းမှုနှင့်ဆက်ဆံရာတွင်များသောအားဖြင့် Fonteach ထက် ပို. ထိရောက်မှုရှိသည်။ ဘာကြောင့်လဲဆိုတော့ array_colum ကို သတ်သတ်မှတ်မှတ်အခြေအနေတွေအတွက်အကောင်းဆုံးဖြစ်တယ်။ ၎င်းသည်သတ်မှတ်ထားသောကော်လံများကိုအောက်ခြေရှိခင်းကျင်းရေးတွင်တိုက်ရိုက်ထုတ်ယူပြီး PHP Code အဆင့်တွင်ကွင်းဆက်ထိန်းချုပ်မှုလုပ်ငန်းများကိုရှောင်ရှားနိုင်သည်။

Forach Loops ၏ 2.2 စွမ်းဆောင်ရည်အားနည်းချက်များ

ဆန့်ကျင်ဘက်အနေဖြင့် forach ကွင်းဆက်သည်လက်စွဲစာအုပ်ကိုဖြတ်သန်းရန်နှင့်တစ်ခုအားဖြင့်တစ်ခုပြုလုပ်ရန်လိုအပ်သည်။ ဤနည်းလမ်းသည် ပြောင်း လွယ်ပြင်လွယ်ရှိနေသော်လည်းကွင်းဆက်တစ်ခုစီ သည် PHP စစ်ဆင်ရေးများ,

3 ။ တိကျတဲ့စွမ်းဆောင်ရည်နှိုင်းယှဉ်

ကျွန်ုပ်တို့တွင်အ ရာ ဝတ်ထု 10000 တွင်ခင်း ကျင်း မှုတစ်ခုရှိသည်ဆိုပါစို့

 // ကွန်တိန်နာတစ်ခုဖန်တီးပါ 10000 အရာဝတ်ထုတစ်ခုခင်းကျင်း
$objects = [];
for ($i = 0; $i < 10000; $i++) {
    $objects[] = (object) ['id' => $i, 'name' => 'Name ' . $i];
}

// စမ်းသပ်မှု array_column ပြပဲှ
$startTime = microtime(true);
$names = array_column($objects, 'name');
$endTime = microtime(true);
echo "array_column execution time: " . ($endTime - $startTime) . " seconds\n";

// စမ်းသပ်မှု foreach 循环ပြပဲှ
$startTime = microtime(true);
$names = [];
foreach ($objects as $object) {
    $names[] = $object->name;
}
$endTime = microtime(true);
echo "foreach execution time: " . ($endTime - $startTime) . " seconds\n";

စမ်းသပ်မှုများတွင် array_colum သည် များသောအားဖြင့် fonteach ကို အထူးသဖြင့် array ပိုများလာသည့်အခါတွင်ပိုမိုတိုတောင်းလိမ့်မည်။

4 ။ နိဂုံးချုပ်

PHP တွင် array_column function သည် foreach ထက်များသောအားဖြင့်, Array_column သည် Php Internet optimization ကိုအောက်ပိုင်းအောက်ပိုင်းကိုမြန်မြန်ဆန်ဆန်ထုတ်ယူရန် PHP onlidization ကို အသုံးပြု. Foreach Loops သည် PHP လုပ်ငန်းများကိုပိုမိုလိုအပ်သော်လည်းစွမ်းဆောင်ရည်ညံ့ဖျင်းသည်။

သို့သော် Forach Loops တွင်စိတ်ကြိုက်ပြုပြင်ပြောင်းလဲရေးဆိုင်ရာယုတ္တိဗေဒလိုအပ်သည့်နေရာများတွင်အချို့သောအခြေအနေများတွင်အားသာချက်များရှိနေသေးသည်။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်သင်သည် Array တစ်ခုတွင်ကော်လံတစ်ခုကိုထုတ်ယူပါက array_column ကို အရင်သုံးရန်အကြံပြုသည်။

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