PHP Object-Object-Oriented Programming တွင် function တစ်ခု၏ 0 င်ခွင့်ခွင့်ပြုချက်ကိုဆုံးဖြတ်ရန်ဆုံးဖြတ်ချက်များသည်မည်သည့်ကုဒ်ကိုခေါ်ဆိုနိုင်မည်နည်း။ access cleanner access modifiers များကိုသတ်မှတ်ခြင်းဖြင့် developer များသည်လုပ်ဆောင်ချက်များကိုမြင်နိုင်စွမ်းနှင့်ဝင်ရောက်ကြည့်ရှုခြင်းကိုပြောင်းလဲစေနိုင်သည်။
အများပြည်သူနှင့်ပြုပြင်ထားသောလုပ်ဆောင်ချက်များကိုကုဒ်အားလုံးကိုမြင်နိုင်ပြီးအတန်းအပြင်ဘက်အပါအ 0 င်မည်သည့်နေရာတွင်မဆိုဟုခေါ်နိုင်သည်။
public function publicFunction() {
// လုပ်ဆောင်ချက်ကုဒ်
}
အကာအကွယ်ပေးထားသောပြုပြင်ထားသော function ကိုအတန်းအစားနှင့်၎င်း၏ခွဲခြမ်းစိတ်ဖြာခြင်းဖြင့်သာ 0 င်ရောက်နိုင်သည်။
protected function protectedFunction() {
// လုပ်ဆောင်ချက်ကုဒ်
}
ပုဂ္ဂလိကမှပြုပြင်ထားသောလုပ်ဆောင်ချက်များကို function ကိုယ်နှိုက်ကိုသတ်မှတ်ပေးသောအတန်းအစားမှသာ 0 င်ရောက်နိုင်ပြီးခွဲစိတ်မှုနှင့်အတန်းအပြင်ဘက်တွင်လက်လှမ်းမမီနိုင်ပါ။
private function privateFunction() {
// လုပ်ဆောင်ချက်ကုဒ်
}
အောက်ပါဥပမာသည်မိဘနှင့်ကလေးအတန်းများတွင်မတူညီသောခွင့်ပြုချက်များ၏ 0 င်ရောက်မှုဆိုင်ရာလုပ်ဆောင်မှုများ၏အခြေအနေကိုပြသသည်။
class ParentClass {
public function publicFunction() {
echo "Public function in parent class";
}
protected function protectedFunction() {
echo "Protected function in parent class";
}
private function privateFunction() {
echo "Private function in parent class";
}
}
class ChildClass extends ParentClass {
public function accessFunctions() {
$this->publicFunction();
$this->protectedFunction();
// အောက်ပါခေါ်ဆိုမှုအမှားတစ်ခုဖြစ်ပေါ်စေလိမ့်မယ်,အကေြာင်းမှာprivateFunctionဒါဟာပုဂ္ဂလိကပါပဲ
// $this->privateFunction();
}
}
$child = new ChildClass();
$child->publicFunction();
$child->protectedFunction(); // ဤနေရာတွင်ခေါ်ဆိုခြင်းအမှားတစ်ခုသတင်းပို့ပါလိမ့်မယ်,protectedလုပ်ဆောင်ချက်များကိုအတန်းအပြင်ဘက်တွင်တိုက်ရိုက်ကြည့်ရှု။ မရပါ
ဤဥပမာတွင် Parentclass သည် မတူညီသောခွင့်ပြုချက်ဖြင့်လုပ်ဆောင်မှုများကိုသတ်မှတ်သည်။ ကလေးအတန်းအစား ကလေးငယ် သည်မိဘအတန်းထဲတွင်ပြည်သူလူထုနှင့်အကာအကွယ်ပေးထားသောလုပ်ဆောင်မှုများကိုရယူနိုင်သော်လည်းပုဂ္ဂလိကလုပ်ဆောင်ချက်များမဟုတ်ပါ။ အကာအကွယ်ပေးထားသောလုပ်ဆောင်ချက်များကိုအတန်းပြင်ပတွင်တိုက်ရိုက်မခေါ်နိုင်ကြောင်းသတိပြုသင့်သည်။
Access Vaction Modifiers ၏ဆင်ခြင်တုံတရားအသုံးပြုမှုသည် PHP object-oriented design ၏အရေးကြီးသောအစိတ်အပိုင်းဖြစ်သည်။ လုပ်ဆောင်ချက်၏ Access level level ကိုမှန်ကန်စွာသတ်မှတ်ခြင်းအားဖြင့်အတန်း၏အတွင်းပိုင်းအကောင်အထည်ဖော်မှုအသေးစိတ်ကိုအကာအကွယ်ပေးနိုင်ပြီးပြင်ပကမ္ဘာသို့လိုအပ်သော interfaces များကိုထောက်ပံ့ပေးနိုင်သည်။