PHP တွင် array_filter () သည် calterback function မှတဆင့် array တစ်ခုရှိ element များကို filter လုပ်ရန်အသုံးပြုသောအလွန်အသုံးများသော built-in function တစ်ခုဖြစ်သည်။ ၎င်းသည် calnback function ကို မှန်ကန်စွာ အတည်ပြုသည့်ဒြပ်စင်များပါ 0 င်သော array အသစ်တစ်ခုကိုပြန်လည်ရောက်ရှိစေသည်။ array_filter () ကိုယ်နှိုက်သည်အလွန်အဆင်ပြေသည်။ အချို့ကိစ္စများတွင်သင်ပိုမိုပြောင်းလွယ်ပြင်လွယ်ရှိရန်သို့မဟုတ်အပိုဆောင်းယုတ္တိဗေဒကိုထည့်သွင်းရန်လိုအပ်လိမ့်မည်။
ဤဆောင်းပါးသည်ဘုံထုံးစံ function ကိုမည်သို့ adaps လုပ်ရမည်, array_filter () ၏အမူအကျင့်ကိုတုပရန်နှင့်၎င်းတွင်နောက်ထပ်လုပ်ဆောင်မှုများကိုအကောင်အထည်ဖော်လိမ့်မည်။
ပထမ ဦး စွာ Array_Filter () function ကိုအတိုချုပ်ပြန်လည်သုံးသပ်ကြပါစို့။
<?php
$array = [1, 2, 3, 4, 5, 6];
$result = array_filter($array, function($value) {
return $value % 2 == 0; // ပင်နံပါတ်များကိုသာထိန်းသိမ်းထားကြသည်
});
print_r($result);
?>
output ရလဒ် -
Array
(
[1] => 2
[3] => 4
[5] => 6
)
အထက်ပါကုဒ်တွင် array_filter () function သည်နံပါတ်များသာပါ 0 င်သောခင်းကျင်းမှုအသစ်တစ်ခုကိုပြန်လည်ရောက်ရှိစေသည်။
နောက်ထပ်ပြောင်းလွယ်ပြင်လွယ်ပေးနေစဉ် array_filter () ၏လုပ်ဆောင်နိုင်မှုကိုတုန့်ပြန်စေမည့် Custom_Arl_filter () ဟုခေါ်သော function ကိုကျွန်ုပ်တို့ဆက်တင်လိုသည်။
<?php
/**
* စိတ်ကြိုက် encapsulated array_filter() လုပ်ဆောင်ချက်
*
* @param array $array စစ်ထုတ်ခံရဖို့ Arrays
* @param callable $callback 回调လုပ်ဆောင်ချက်
* @param bool $preserve_keys မူရင်းခင်းကျင်း၏သော့များကိုဆက်လက်ထိန်းသိမ်းရန်ရှိမရှိ
* @return array အဆိုပါ filtered ခင်းကျင်းပြန်လာ
*/
function custom_array_filter(array $array, callable $callback, bool $preserve_keys = true): array
{
$filtered_array = [];
foreach ($array as $key => $value) {
if ($callback($value)) {
if ($preserve_keys) {
$filtered_array[$key] = $value;
} else {
$filtered_array[] = $value;
}
}
}
return $filtered_array;
}
$array = [1, 2, 3, 4, 5, 6];
// 使用自定义လုပ်ဆောင်ချက်过滤偶数
$result = custom_array_filter($array, function($value) {
return $value % 2 == 0;
});
print_r($result);
?>
ဤဥပမာတွင် Custom_array_filter () function သည် parameters သုံးနာရီကိုလက်ခံသည်။
$ array : filtered ခံရဖို့ array တစ်ခု။
$ callback : မည်သည့် element များကိုထိန်းသိမ်းထားသင့်ကြောင်း callback function ကို။
$ Present_Keys - မူရင်းခင်းကျင်းမှု၏သော့ကိုထိန်းသိမ်းရန်ဆုံးဖြတ်သည့် optional boolean တန်ဖိုး။ မှန်ကန် ရန်သတ်မှတ်ထားပါကမူရင်းခင်းကျင်းခြင်း၏သော့များကိုဆက်လက်ထိန်းသိမ်းထားလိမ့်မည်။
အထက်ပါကုဒ်နံပါတ်ကိုဖွင့ ်. array_filter () တွင်တူညီသော output ကိုရရှိလိမ့်မည်။
ခင်းကျင်းမှု၏စစ်ထုတ်ခြင်းကာလအတွင်း array ရှိ URLs များကို array ရှိ URL များကိုလုပ်ဆောင်ရန်နှင့် M66.NET နှင့်အစားထိုးရန်လိုအပ်သည်ဆိုပါစို့။ ကျွန်ုပ်တို့သည်ဤ function ကို callback function တွင်အကောင်အထည်ဖော်နိုင်သည်။
<?php
function custom_array_filter_with_url(array $array, callable $callback, bool $preserve_keys = true): array
{
$filtered_array = [];
foreach ($array as $key => $value) {
// ဟုတ်လားစစ်ဆေးပါ URL,သို့ဆိုလျှင်ဒိုမိန်းအမည်ကိုအစားထိုးပါ
if (filter_var($value, FILTER_VALIDATE_URL)) {
$parsed_url = parse_url($value);
$value = str_replace($parsed_url['host'], 'm66.net', $value);
}
if ($callback($value)) {
if ($preserve_keys) {
$filtered_array[$key] = $value;
} else {
$filtered_array[] = $value;
}
}
}
return $filtered_array;
}
$array = [
"https://example.com/page1",
"https://another-example.com/page2",
"https://m66.net/somepage"
];
// 使用自定义လုပ်ဆောင်ချက်,ပြန်လည်နေရာချ URL ဒိုမိန်းအမည်ဖြစ်သည် m66.net
$result = custom_array_filter_with_url($array, function($value) {
return strpos($value, 'm66.net') !== false; // သာပါဝင်မှုကိုစောင့်ရှောက်လော့ m66.net ၏ URL
});
print_r($result);
?>
ဤဥပမာတွင် Custom_array_filter_with_Ururl () function သည် array ကိုစစ်ထုတ်ရုံသာမကတန်ဖိုးတစ်ခုစီသည် filtering process တွင် URL တစ်ခုရှိမရှိစစ်ဆေးသည်။ အကယ်. ၎င်းသည် URL ဖြစ်ပါက၎င်း၏ဒိုမိန်းအမည်ကို M66.net ဖြင့်အစားထိုးလိမ့်မည်။ callback function သည်မည်သည့် element များကိုထိန်းသိမ်းထားသင့်သည်ကိုဆုံးဖြတ်သည်။
Common Custom Function ကို encapsulating အားဖြင့်ကျွန်ုပ်တို့သည် array_filter () ၏စွမ်းဆောင်ရည်ကိုတိုးချဲ့နေစဉ် array_filter () function ကိုအကောင်အထည်ဖော်နိုင်သည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည် array တစ်ခုစီကိုစီရန်သို့မဟုတ်အခြားထုံးစံအတိုင်းယုတ္တိဗေဒကိုထည့်သွင်းသောအခါ URL ၏ domain name ကိုပြောင်းလဲနိုင်သည်။ ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်သာမန်ခင်းကျင်းရေးဆွဲခြင်း filters filters filters filters များကိုပြန်လည်သုံးသပ်လို့ရ,
သက်ဆိုင်သောတက်(ဂ်)များ:
array_filter