PHP တွင်တည်ငြိမ်သောနည်းလမ်းများနှင့် non-static method များသည်အရာဝတ်ထု ဦး တည်ပရိုဂရမ်းမင်းတွင်ကွဲပြားသောနည်းလမ်းနှစ်မျိုးဖြစ်သည်။ static နည်းလမ်းများသည်လူတန်းစားအဆင့်များဖြစ်ပြီးအရာဝတ်ထုများကိုချက်ချင်းပြုလုပ်ရန်မလိုအပ်ပါ။ ၎င်းတို့ကိုဘုံအတန်းနှင့်သက်ဆိုင်သည့်လုပ်ငန်းများကိုကိုင်တွယ်ရန်အသုံးပြုလေ့ရှိပြီး static keyword ကို သုံး. ဖော်ထုတ်သည်။ non-static method များမှာဥပမာအားဖြင့်သာမန်အဆင့်သတ်မှတ်ချက်များဖြင့်ဖြစ်လေ့ရှိပြီးများသောအားဖြင့်ဥပမာအားဖြင့် properties နှင့်အခြားဥပမာအားဖြင့်အခြားဥပမာအားဖြင့်အသုံးပြုသောအရာဝတ်ထုဖြစ်ရပ်များကိုခေါ်ယူရမည်။
တည်ငြိမ်သောနည်းလမ်းများသည် static ဂုဏ်သတ္တိများနှင့် static properties နှင့် static method များကိုအတန်းထဲတွင်အရာ 0 တ်ထုများမပါ 0 င်ပါ။ Non-static method များသည် static properties နှင့် methods များကိုရယူနိုင်သည်။ ဥပမာအား ဖြင့်ဥပမာအားဖြင့်ဥပမာအားဖြင့်ဂုဏ်သတ္တိများနှင့်ဥပမာအားဖြင့်လည်းရယူနိုင်သည်။
static နည်းလမ်းများသည် ဒေါ်လာမသုံးနိုင်သည့်အတွက်ဒေါ်လာမသုံးနိုင်သည့်အတွက်ဤနည်းစနစ် မဟုတ်သောဂုဏ်သတ္တိများနှင့်နည်းလမ်းများကိုရယူရန်လိုအပ်ပါက static မဟုတ်သောနည်းလမ်းများကိုသင်ခေါ်ဆိုပါကအောက်ပါနည်းလမ်းနှစ်ခုကိုသုံးနိုင်သည်။
ဥပမာအားဖြင့်အရာဝတ်ထု parameters တွေကို static method ထဲကိုဖြတ်ပြီးဒီအရာဝတ်ထုမှတစ်ဆင့်မတည်ငြိမ်သောနည်းလမ်းကိုခေါ်ဆိုပါ။
class MyClass {
public $name = "John";
public function hello() {
echo "Hello, " . $this->name;
}
public static function accessNonStaticMethod($obj) {
$obj->hello();
}
}
$obj = new MyClass();
MyClass::accessNonStaticMethod($obj);
ဤနည်းလမ်းသည်ခေါ်ဆိုမှုစဉ်အတွင်းအရာဝတ်ထုများတွင်ဖြတ်သန်းခြင်းအပေါ်မူတည်သည်။
လက်ရှိလူတန်းစားအရာဝတ်ထုကို static method တစ်ခုတွင်တိုက်ရိုက်ချက်ချင်းစစ်ဆေးပါ, ပြီးနောက် non-static method ကိုခေါ်ပါ။
class MyClass {
public $name = "John";
public function hello() {
echo "Hello, " . $this->name;
}
public static function accessNonStaticMethod() {
$obj = new self();
$obj->hello();
}
}
MyClass::accessNonStaticMethod();
ဤနည်းလမ်းသည်ပြင်ပ parameters တွေကိုမလိုအပ်ပါ။
ငြိမ်သက်ခြင်းမဟုတ်သောနည်းလမ်းများဟုခေါ်ဆိုသည့်တည်ငြိမ်သောနည်းလမ်းများအကောင်အထည်ဖော်မှုနှစ်ခုကိုအကောင်အထည်ဖော်ရန်ပြသသည့်အပြည့်အဝဥပမာတစ်ခုမှာ -
class MyClass {
public $name = "John";
public function hello() {
echo "Hello, " . $this->name;
}
public static function accessNonStaticMethod() {
$obj = new self();
$obj->hello();
// သငျသညျအစအရာဝတ်ထုခေါ်ဆိုမှုအတွက် pass နိုင်ပါတယ်
// $obj = new self();
// self::accessNonStaticMethod($obj);
}
}
MyClass::accessNonStaticMethod();
၎င်းကို ပြန်လည်အသုံးပြုသင့်သည်မှာ static method များတွင် non-static နည်းစနစ်များကိုအသုံးမပြုရန်အသုံးမပြုနိုင်ပါ။
တည်ငြိမ်သောနည်းလမ်းများနှင့် Non-static နည်းစနစ်များသည် PHP Object-Object-Oriented Programming ၏အရေးကြီးသောအစိတ်အပိုင်းများဖြစ်သည်။ တည်ငြိမ်သောနည်းလမ်းများသည် static အသင်း 0 င်များကိုတိုက်ရိုက်ခေါ်ဆိုနိုင်သည်။ တည်ငြိမ်သောနည်းလမ်းများကို 0 င်ရောက်ရန်ငြိမ်သက်သောနည်းလမ်းများကို 0 င်ရောက်နိုင်ရန်အတွက်သာဓကများသို့မဟုတ်ပြည်တွင်းချက်ချင်းသုံးရန်အရာဝတ်ထုများကိုအကောင်အထည်ဖော်နိုင်ပြီး ၎င်းကို တိုက်ရိုက်မသုံးနိုင်ပါ။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင် calling method ကိုရွေးချယ်ရန်နှင့် Code ကိုရှင်းရှင်းလင်းလင်းထိန်းသိမ်းထားရန်သော့ချက်ဖြစ်သည်။