လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> အချို့သောကိန်းဂဏန်းများထက်ပိုသောဒြပ်စင်များအားလုံးကိုထုတ်ယူပါ

အချို့သောကိန်းဂဏန်းများထက်ပိုသောဒြပ်စင်များအားလုံးကိုထုတ်ယူပါ

M66 2025-06-04

PHP တွင် array_filter () function သည်အလွန်လက်တွေ့ကျသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ ဤ function ကို သုံး. array မှအချို့သောစံသတ်မှတ်ချက်များနှင့်ကိုက်ညီသောဒြပ်စင်များကိုစစ်ထုတ်ရန်ကျွန်ုပ်တို့အသုံးပြုနိုင်သည်။ ဤဆောင်းပါးသည် array_filter () function ကိုအသုံးပြုရမည်ကိုသတ်မှတ်ထားသောတန်ဖိုးထက်ပိုမိုကြီးမားသောဒြပ်စင်များကိုထုတ်ပေးရန်မည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။

1 ။ array_filter () function ကို၏အခြေခံအသုံးပြုမှု

array_filter () function သည်ခင်းကျင်းခြင်းနှင့်သက်ဆိုင်သော array နှင့်သက်ဆိုင်သော callback function ကို အခြေခံ. သတ်မှတ်ချက်များနှင့်ကိုက်ညီသောဒြပ်စင်များကိုစစ်ထုတ်ပါ။ အကယ်. callback function ကို မှန်ကန်စွာ ပြန်လည်ရောက်ရှိပါက element ကို array အသစ်တွင်ထိန်းသိမ်းထားသည်။ အကယ်. မှားယွင်းစွာ ပြန်လာလျှင်, element ကို filtered လိမ့်မည်။

 <?php
$array = [1, 2, 3, 4, 5, 6];
$result = array_filter($array, function($value) {
    return $value > 3;
});

print_r($result);
?>

အထက်ပါကုဒ်တွင် array တွင်ရှိသောဒြပ်စင်တစ်ခုစီသည် 3 ထက်ကြီးသည်ကိုစစ်ဆေးရန် callback function ကိုအသုံးပြုသည်။ နောက်ဆုံးတွင် $ ရလဒ် Array သည် 3 ထက်ကြီးသည့်ဒြပ်စင်များအားလုံးပါ 0 င်မည်ဖြစ်သည်။

2 ။ ဥပမာ - သတ်မှတ်ထားသောတန်ဖိုးထက်ပိုကြီးသောဒြပ်စင်အားလုံးကိုထုတ်ယူပါ

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

 <?php
// ငါတို့မှာကိန်းပေါင်းစုံပေါင်းများစွာပါဝင်တဲ့နေရာတစ်ခုရှိတယ်ဆိုပါစို့
$array = [5, 12, 15, 3, 10, 18, 7];

// စစ် filter အခြေအနေများကိုသတ်မှတ်ပါ:သတ်မှတ်ထားသောတန်ဖိုးထက်သာ။ ကြီးမြတ်(10)
$threshold = 10;
$result = array_filter($array, function($value) use ($threshold) {
    return $value > $threshold;
});

// output filtered ရလဒ်များ
print_r($result);
?>

ဒီကုဒ်ကို run ပြီးနောက် output ကိုဖြစ်လိမ့်မည် -

 Array
(
    [1] => 12
    [2] => 15
    [5] => 18
)

အထက်ပါကုဒ်များတွင်ကျွန်ုပ်တို့သည် ဒေါ်လာတံခါးခုံကို အသုံးပြု . သော့ချက်စာလုံးမှတဆင့်အမည်မသိ function တစ်ခုထဲသို့လွှဲပြောင်းပေးပြီး filtering အခြေအနေများကို dynamically dynamically လုပ်သည်။ ဤဥပမာတွင် array_filter () function သည် 10 ထက်ကျော်လွန်သောဒြပ်စင်များကိုအောင်မြင်စွာစစ်ထုတ်သည်။

3 ။ array_filter ၏တန်ဖိုးကိုပြန်ပို့ပါ ()

Array_Filter () သည် စစ်ထုတ်ခြင်းအခြေအနေများနှင့်ကိုက်ညီသောအရာများကိုဖြည့်ဆည်းပေးသည့်အရာများကိုပြန်လည်ထည့်သွင်းထားသည့် array အသစ်တစ်ခုကိုပြန်လည်ရောက်ရှိစေပြီးခင်းကျင်းမှု၏အဓိကတန်ဖိုးသည်ပြောင်းလဲနိုင်သည်။ ပုံမှန်အားဖြင့် array_filter () သည် မူလခင်းကျင်းခြင်း၏သော့များကိုထိန်းသိမ်းထားသည်။ အကယ်. သင်ခင်းကျင်းအတွင်းသော့များကိုပြန်လည်ညွှန်းလိုပါက array_values ​​() function ကိုသုံးနိုင်သည်။

 <?php
// filtered ခင်းကျင်းရယူပါ,နှင့် array keys re-index
$result = array_values(array_filter($array, function($value) use ($threshold) {
    return $value > $threshold;
}));

print_r($result);
?>

4 ။ URL အပြောင်းအလဲနဲ့အကြောင်း

အချို့သောအခြေအနေများတွင် URL များပါ 0 င်သော array တစ်ခုပြုလုပ်ရန်လိုအပ်နိုင်သည်။ ကျွန်ုပ်တို့တွင် URL များစွာနှင့်အတူခင်းကျင်းထားရှိသည်ဆိုပါစို့။ Domain Name M66.net နှင့် link အားလုံးကို filter လုပ်ချင်သည်။ အောက်ပါအတိုင်းပြုလုပ်နိုင်သည်။

 <?php
$urls = [
    "http://example.com/page1",
    "http://m66.net/page2",
    "https://m66.net/page3",
    "http://anotherdomain.com/page4"
];

$result = array_filter($urls, function($url) {
    return strpos($url, "m66.net") !== false;
});

print_r($result);
?>

ဤဥပမာတွင် array_filter () function သည် M66.net ဒိုမိန်းအမည်ပါ 0 င်သည့် URL အားလုံးကိုထုတ်ပေးသည်။ ပြေးပြီးနောက်ရလဒ်မှာ -

 Array
(
    [1] => http://m66.net/page2
    [2] => https://m66.net/page3
)

5 ။ အကျဉ်းချုပ်

ဤဆောင်းပါး၏နမူနာများမှတဆင့်စံသတ်မှတ်ချက်များနှင့်ကိုက်ညီသော Array element များကို filter လုပ်ရန် array_filter () function ကိုမည်သို့အသုံးပြုရမည်ကိုကျွမ်းကျင်သင့်သည်။ ၎င်းသည်နံပါတ်များ (သို့) ကြိုးများ, အကယ်. သင်သည် array တစ်ခုတွင် element များကို filter လုပ်ရန်လိုအပ်ပါကသင့်လျော်သော callback function များကိုသင်အကောင်အထည်ဖော်ရန်အတွက်သင့်လျော်သော callback လုပ်ဆောင်ချက်များကိုရေးနိုင်သည်။

သင့်တွင်မေးခွန်းများရှိပါကသို့မဟုတ်အသေးစိတ်အချက်အလက်များလိုအပ်ပါကကျွန်ုပ်ကိုဆက်သွယ်ပါ။