PHP တွင် array_filter () သည် callback function ကို အခြေခံ. array တစ်ခု၏ဒြပ်စင်များ၏ဒြပ်စင်များကိုစစ်ထုတ်သည့်အလွန်အသုံးများသောလုပ်ဆောင်မှုတစ်ခုဖြစ်သည်။ စံသတ်မှတ်ချက်များနှင့်မကိုက်ညီသောဒြပ်စင်များကိုဖယ်ရှားခြင်းအားဖြင့်၎င်းသည်ခင်းကျင်းမှုအသစ်တစ်ခုကိုထုတ်ပေးသည်။ Array_filter () သည်တိကျသောကိရိယာတစ်ခုဖြစ်သော်လည်းကုဒ်၏ဖတ်နိုင်မှုကိုကျိုးကြောင်းဆီလျော်စွာအသုံးမပြုဘဲလျှော့ချနိုင်သည်။ Code ၏ဖတ်နိုင်မှုကိုတိုးတက်စေရန် callback လုပ်ဆောင်ချက်များ၏အရေးအသားကိုရိုးရှင်းစေရန် Ternary operator များကိုသုံးနိုင်သည်။
array_filter () function သည် parray နှစ်ခုနှင့် callback function ကိုအသုံးပြုသည်။ ၎င်းသည်ခင်းကျင်းမှုရှိဒြပ်စင်တစ်ခုစီကိုကျော်လွန်ပြီးပြန်လည်ခေါ်ဆိုမှု၏ပြန်လာတန်ဖိုးကို မှန်ကန်စွာ ထိန်းသိမ်းထားပါ ။
<?php
$numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9];
$filteredNumbers = array_filter($numbers, function($number) {
return $number % 2 === 0; // ပင်နံပါတ်များကိုသာထိန်းသိမ်းထားကြသည်
});
print_r($filteredNumbers);
?>
output ရလဒ် -
Array
(
[1] => 2
[3] => 4
[5] => 6
[7] => 8
)
Ternary operator ( ? ) သည်အတိုချုပ်ခြွင်းချက်ဆိုင်ရာအသုံးအနှုန်းတစ်ခုဖြစ်သည်။ array_filter () ကို ပိုမိုတိကျစွာဖတ်ရန်လွယ်ကူစေရန် callback functions ၏ယုတ္တိဗေဒကိုပိုမိုရိုးရှင်းစေရန် Ternary operator များသုံးနိုင်သည်။ အထူးသဖြင့်တန်ဖိုးတစ်ခုရိုးရိုးရှင်းရှင်းလိုအပ်လာသည့်အခါ Ternary Operator သည် Code ကိုပိုမိုကျစ်စေနိုင်သည်။
ငါတို့ကို 5 ထက်ပိုသောဒြပ်စင်များကိုသိမ်းဆည်းရန်ခင်းကျင်းမှုကိုစစ်ထုတ်လိုသည်ဆိုပါစို့။ ကျွန်ုပ်တို့သည်ဤယုတ္တိဗေဒကို Ternary operator မှတစ်ဆင့်အကောင်အထည်ဖော်နိုင်သည်။
<?php
$numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9];
$filteredNumbers = array_filter($numbers, function($number) {
return $number > 5 ? true : false; // သာသာ။ ကြီးမြတ်လျှင်5,ပြန်လာ true
});
print_r($filteredNumbers);
?>
output ရလဒ် -
Array
(
[5] => 6
[6] => 7
[7] => 8
[8] => 9
)
ဒီဥပမာမှာ ternary operator ? TRUE: MASS သည် နံပါတ်> 5 ၏အခြေအနေမှန်ကန်မှုရှိမရှိဆုံးဖြတ်ရန်အသုံးပြုသည်။ မှန်လျှင်၎င်းသည် အမှန်ပင် ပြန်လာလိမ့်မည်။ သို့မဟုတ်ပါက မှားယွင်း လိမ့်မည်။ ပြန်လာ $ နံပါတ်> 5 ပေမယ့်; ပိုမိုရှုပ်ထွေးသောတရားစီရင်မှုများလိုအပ်သည့်အခါ Ternary Operator မှတစ်ဆင့်ကျွန်ုပ်တို့သည်တူညီသောအကျိုးသက်ရောက်မှုကိုရရှိနိုင်ပါသည်။
URL များပါ 0 င်သည့် urls များပါ 0 င်ရန်နှင့် http://m66.net ဖြင့်စတင်သော URLs များကိုသာစစ်ဆေးရန်လိုအပ်သည်ဆိုပါစို့။ ဤကိစ္စတွင်ကျွန်ုပ်တို့သည်တရားစီရင်ရာယုတ္တိဗေဒကိုရိုးရှင်းစေရန် Ternary operator များကိုသုံးနိုင်သည်။
<?php
$urls = [
'http://m66.net/page1',
'http://example.com/page2',
'http://m66.net/page3',
'http://anotherdomain.com/page4',
];
$filteredUrls = array_filter($urls, function($url) {
return strpos($url, 'http://m66.net') === 0 ? true : false; // သာဆက်လက်ထိန်းသိမ်းထား m66.net အစ URL
});
print_r($filteredUrls);
?>
output ရလဒ် -
Array
(
[0] => http://m66.net/page1
[2] => http://m66.net/page3
)
ဤဥပမာတွင် strusts ($ URL '' http://m66.net ') === 0. URL သည် http://m66.net ဖြင့်စတင်သည်ကိုဆုံးဖြတ်ရန်အသုံးပြုသည်။ Ternary operator သည်ဤယုတ္တိဗေဒကိုကျွန်ုပ်တို့ကိုင်တွယ်ဖြေရှင်းနိုင်ရန်သေချာစေသည်။
array_filter () ကို အသုံးပြုသောအခါ thernary အော်ပရေတာများကိုမိတ်ဆက်ပေးခြင်းဖြင့် code readability နှင့်ရိုးရှင်းမှုကိုတိုးတက်စေနိုင်သည် ။ တစ်ချိန်တည်းမှာပင်၎င်းသည် Code ကိုပိုမိုရှုပ်ထွေးသောတရားစီရင်ရာတွင်အတိုချုပ်ဖွဲ့စည်းပုံကိုထိန်းသိမ်းရန်ခွင့်ပြုသည်။