array_filter () သည် PHP တွင်အသုံးပြုသော function တစ်ခုဖြစ်သည်။ ၎င်းသည် callback function များအပေါ် အခြေခံ. arles တစ်ခုတွင် element များကို filter လုပ်ရန်အသုံးပြုသည်။ Array_Fileter () ကို array တစ်ခုသို့ရောက်သောအခါ၎င်းသည် array () တွင်မည်သည့် element များကိုထိန်းသိမ်းထားမည်ဖြစ်ကြောင်းဆုံးဖြတ်ရန်နှင့်သင်ထောက်ပံ့ပေးသည့် callback function ကိုပြန်လည်ပေးအပ်ခြင်းအပေါ် အခြေခံ. Element များကိုဖယ်ရှားပေးသည်။ array_filter () ၏အသုံးချပရိုဂရမ်အများစုသည်ရိုးရှင်းသော array များကိုကိုင်တွယ်ရန်အာရုံစိုက်သော်လည်းအရာဝတ်ထုပါ 0 င်သည့် array များနှင့်သက်ဆိုင်သည့်အခါအပြုအမူများတွင်အထူးအရာအချို့ရှိသည်။
ပထမအချက်မှာအောက်ပါအတိုင်းသတ်မှတ်ထားသော array_filter () ၏အခြေခံအသုံးပြုမှုကိုကြည့်ကြပါစို့။
array_filter(array $array, callable $callback = null, int $mode = 0): array
$ array : filter သို့ input array ။
$ callback : element တစ်ခုစီသည်စံသတ်မှတ်ချက်များနှင့်ကိုက်ညီမှုရှိမရှိဆုံးဖြတ်ရန် CallBack function ကို။
$ mode : ဤ parameter သည်ပြန်လည်ပြင်ဆင်ထားသော inray တွင်သော့ချက်တန်ဖိုးကိုဆက်လက်ထိန်းသိမ်းထားခြင်းရှိမရှိဆုံးဖြတ်သည်။
အကယ်. callback function ကိုမထောက်ပံ့ပါက array_filter () သည် array ရှိ element အားလုံးကို မှားယွင်းသော တန်ဖိုးတစ်ခုဖြင့်ဖယ်ရှားပေးသည်။
$array = [0, 1, 2, 3, 4, 5];
$result = array_filter($array);
// ထုတ်လုပ်ခြင်း [1, 2, 3, 4, 5]
Array ရှိ Elements များသည်အရာဝတ်ထုများဖြစ်သည့်အခါ array_filter () သည် သာမန်ခင်းကျင်းမှုများကိုကိုင်တွယ်ဖြေရှင်းသည့်အခါနှင့်အတူတူပင်အလုပ်လုပ်သည်, သို့သော် callback function တစ်ခုစီသည်အရာဝတ်ထုတစ်ခုစီကိုအငြင်းပွားမှုတစ်ခုအဖြစ်လက်ခံတွေ့ဆုံသည်။ ထို့ကြောင့်, callback function တွင်အရာဝတ်ထု၏ attribute များအပေါ် အခြေခံ. အရာဝတ်ထုကိုဆက်လက်ထိန်းသိမ်းရန်ဆုံးဖြတ်နိုင်သည်။
အသုံးပြုသူ အရာဝတ်ထုမျိုးစုံပါ 0 င်သော array တစ်ခုရှိသည်ဆိုပါစို့။ အသုံးပြုသူ အရာဝတ်ထုတစ်ခုစီတွင် နာမည် နှင့် အသက်အရွယ် ဂုဏ်သတ္တိများရှိသည်။ အသက် 18 နှစ်ထက်အသက်ကြီးတဲ့သုံးစွဲသူတွေကိုကျွန်တော်တို့စစ်ထုတ်ချင်တယ်။
class User {
public $name;
public $age;
public function __construct($name, $age) {
$this->name = $name;
$this->age = $age;
}
}
$users = [
new User('Alice', 25),
new User('Bob', 17),
new User('Charlie', 30),
new User('David', 15)
];
$filteredUsers = array_filter($users, function($user) {
return $user->age > 18;
});
foreach ($filteredUsers as $user) {
echo $user->name . " is over 18 years old.\n";
}
Alice is over 18 years old.
Charlie is over 18 years old.
အထက်ပါဥပမာတွင် 18 ထက်အသက်ကြီးသောအသုံးပြုသူများကို callback function မှတဆင့်စစ်ထုတ်သည်။ callback function သည် အသုံးပြုသူ အရာဝတ်ထုကို parameter တစ်ခုအဖြစ်လက်ခံပြီးအရာဝတ်ထုသည် $ user-> age မှအခြေအနေများနှင့်ကိုက်ညီမှုရှိမရှိဆုံးဖြတ်သည်။
အရာဝတ်ထုတစ်ခုသည် Array_Filter () array_filter () သည် အရာဝတ်ထုတစ်ခုလုံးကို callback function ကိုဖြတ်သန်းသွားသည်။ PHP တွင်အရာဝတ်ထုနှိုင်းယှဉ်ခြင်းကိုများသောအားဖြင့်ရည်ညွှန်းခြင်းဖြင့်ပြုလုပ်လေ့ရှိပြီးအရာဝတ်ထုတစ်ခု၏ဂုဏ်သတ္တိများကိုနှိုင်းယှဉ်လိုပါက,
ကျွန်ုပ်တို့သည် အမည်များ ပါ 0 င်သည့်အရာဝတ်ထုများကိုလည်းကျွန်ုပ်တို့စစ်ဆေးနိုင်သည်။ ဥပမာအားဖြင့်, ကျွန်ုပ်တို့သည်အမည်များတွင် "a" အက္ခရာများပါသောအသုံးပြုသူများကိုသာစစ်ထုတ်လိုကြသည်။
$filteredUsers = array_filter($users, function($user) {
return strpos($user->name, 'a') !== false;
});
foreach ($filteredUsers as $user) {
echo $user->name . " has an 'a' in their name.\n";
}
Alice has an 'a' in their name.
Charlie has an 'a' in their name.
ဒီဥပမာမှာသုံးစွဲသူရဲ့နာမည်က string () function ကိုဖြတ်ပြီး "a" အက်ခရာပါ 0 င်သည်ကိုစစ်ဆေးသည်။
Array_filter () သည် အရာဝတ်ထု array များဖြစ်စဉ်များဖြစ်စဉ်များကိုဖြစ်စဉ်များပြုလုပ်သောအခါ array ရှိအရာဝတ်ထုတစ်ခုစီ၏အစိတ်အပိုင်းများကိုရည်ညွှန်းခြင်းဖြင့်ဆက်လက်ပြုလုပ်နေဆဲဖြစ်သည်။ အကယ်. သင်သည် callback function တွင်အရာဝတ်ထုတစ်ခု၏ဂုဏ်သတ္တိများကိုသင်ပြုပြင်ပါကဤပြုပြင်မွမ်းမံမှုများသည်မူလခင်းကျင်းမှုရှိအရာဝတ်ထုများကိုအကျိုးသက်ရောက်လိမ့်မည်။ PHP အရာဝတ်ထုကိုရည်ညွှန်းခြင်းဖြင့်လွန်ကဲသောကြောင့်ဖြစ်သည်။
$filteredUsers = array_filter($users, function($user) {
if ($user->age > 18) {
$user->age += 1; // အရာဝတ်ထု၏ဂုဏ်သတ္တိများကိုပြုပြင်မွမ်းမံ
return true;
}
return false;
});
foreach ($filteredUsers as $user) {
echo $user->name . " is now " . $user->age . " years old.\n";
}
Alice is now 26 years old.
Charlie is now 31 years old.
ဤဥပမာတွင်အသက် 18 နှစ်အောက်သုံးစွဲသူများ၏ သက်တမ်း ကိုပြန်လည်ထူထောင်ရေး function ကိုမှတစ်ဆင့်ပြန်လည်ထူထောင်ရေးလုပ်ငန်းများနှင့်ဤပြုပြင်ပြောင်းလဲမှုသည်မူရင်းခင်းကျင်းမှုအပေါ်သက်ရောက်မှုရှိသည်။
သင်အရာဝတ်ထုတစ်ခုတွင်အလုပ်လုပ်နေသည့်အခါသင် URL ကိုသုံးရန်လိုအပ်သည်။ ဥပမာအားဖြင့်, URL ရှိဒိုမိန်းအမည်အချို့ပါ 0 င်သည့်အရာဝတ်ထုများကို filter လုပ်ရန်လိုအပ်နိုင်သည်။ Callback function တွင် URL processing ပါ 0 င်ပါက, M66.net ဖြင့်ဒိုမိန်းအမည်ကိုအစားထိုးရန်သေချာစေရန်လိုအပ်သည်။
သင့်တော် 0 င်သော 0 က်ဘ်ဆိုက်ကိုကိုယ်စားပြုသောသင်၏ Office တွင် 0 က် ဘ ်ဆိုက် attribute တစ်ခုရှိသည်ဆိုပါစို့။