PHP ကိုအသုံးပြုသောအခါ၎င်းသည် "ပုဂ္ဂလိကပိုင်များကိုရယူရန်ကြိုးစားခြင်း" ၏အမှားတစ်ခုကိုကြုံတွေ့ရသည့်အမှားတစ်ခုဖြစ်သည့်အခြေအနေတစ်ခုဖြစ်သည်။ PHP Consinants သည်ပုံမှန်အားဖြင့်ပြင်ဆင်ထားသောအချက်အလက်များကိုပရိုဂရမ်တွင်သိမ်းထားလေ့ရှိပြီးပုဂ္ဂလိကပိုင်များကိုအတန်းအတွင်း၌သာ 0 င်ရောက်နိုင်ပြီးပြင်ပအတန်းများသို့မဟုတ်ခွဲစိတ်ကုသမှုများကိုတိုက်ရိုက် 0 င်ရောက်နိုင်ခြင်းမရှိနိုင်ပါ။ ပုဂ္ဂလိကစဉ်ဆက်မပြတ်ဝင်ရောက်ရန်ကြိုးစားသောအခါ PHP သည်အမှားတစ်ခုပြုလုပ်လိမ့်မည်။
developer များပိုမိုနားလည်ပြီးဤပြ problem နာကိုပိုမိုကောင်းမွန်အောင်ဖြေရှင်းရန်နှင့်ဖြေရှင်းနိုင်ရန်ဤဆောင်းပါးသည် developer များကပုဂ္ဂလိကစဉ်ဆက်မပြတ်သန့်ရှင်းစွာ 0 င်ရောက်နိုင်စေရန်အတွက်သတ်သတ်မှတ်မှတ်ကုဒ်နမူနာများမှတဆင့်ဖြေရှင်းနည်းများကိုပြသလိမ့်မည်။
MyClass အတန်း Private Constant My_Private_constant = 'ပုဂ္ဂလိကစဉ်ဆက်မပြတ်'; အများပြည်သူ function ကို getPrivateconstant () {) Self :: My_Private_contstant; } } $ obj = myclass (); echo $ obj-> getPrivateconstant ();
ဤဥပမာတွင်ကျွန်ုပ်တို့သည်အတန်းထဲတွင်လူတန်းစား MyClass ကို သတ်မှတ်. Class တွင်ပုဂ္ဂလိကစဉ်ဆက်မပြတ် my_private_constant ကိုကြေငြာသည်။ ထို့နောက်ကျွန်ုပ်တို့သည်အဆက်မပြတ်တန်ဖိုးကိုပြန်ပို့ရန် GetPrrivateconstant ကို GetPrivateconstant ကိုဖန်တီးသည်။ သို့သော်ကျွန်ုပ်တို့သည်အဆက်မပြတ်ဆက်သွယ်ရန်ကြိုးစားသောအခါ PHP သည်ဆိုးဝါးသောအမှားတစ်ခုဖြစ်သောကြောင့် PHP သည်အမှားအယွင်းတစ်ခုချထားသည်။
Fatal Error: uncraff အမှား - ပုဂ္ဂလိက const myclass :: My_Private_constant
MyClass အတန်း Private Constant My_Private_constant = 'ပုဂ္ဂလိကစဉ်ဆက်မပြတ်'; အများပြည်သူ static function ကို getPrivateconstant () {) Self :: My_Private_contstant; } } ECHO MYCLASS :: GetPrivateconstant ();
ဤဥပမာတွင် GetPrivateconstant နည်းလမ်းကိုငြိမ်သက်စေသောနည်းလမ်းသို့ပြောင်းသည်။ ဤနည်းလမ်းကိုစာသင်ခန်းအမည်ဖြင့်တိုက်ရိုက်ခေါ်ဝေါ်သဖြင့်အတန်းမဖန်တီးပါကပင်ပုဂ္ဂလိကပိုင်များကိုအောင်မြင်စွာရယူနိုင်ပါသည်။ static method များကိုအသုံးပြုခြင်းသည်ပုဂ္ဂလိကကိန်းဂဏန်းများကိုရယူရာတွင်အမှားအယွင်းများကိုဖြေရှင်းရန်ထိရောက်သောနည်းလမ်းများအနက်မှတစ်ခုဖြစ်သည်။
MyClass အတန်း ကာကွယ်ထားသော Conment My_Protected_constant = 'Protected Constant'; } အတန်းအစား My Smpintclass MyClass ကိုတိုးချဲ့သည် အများပြည်သူ function ကို GetProtedComanstant () Self :: My_Protected_constant; } } $ obj = အသစ် My Min Minintclass (); ECHO $ OBJ-> getProtedComanstant ();
ဤဥပမာတွင်ကျွန်ုပ်တို့သည်မူလသီးသန့်စဉ်ဆက်မပြတ်ကိုအကာအကွယ်ပေးထားသောစဉ်ဆက်မပြတ်ပြောင်းလဲသွားသည်။ အကာအကွယ်ပေးထားသည့်အတိုင်းလူတန်းစားများနှင့် subclasses တွင်ကြည့်ရှုနိုင်သည်။ ထို့ကြောင့် Subclass Mysintclass တွင် Protected Constants ကိုရယူရန်အများပြည်သူဆိုင်ရာနည်းလမ်းတစ်ခုကိုဖန်တီးနိုင်သည်။ ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်ပုဂ္ဂလိကပိုင်များကိုကြည့်ရှုခြင်း၏အမှားကိုရှောင်ကြဉ်သည်။
အချုပ်အားဖြင့်ဆိုရလျှင် PHP အမှားများတွင်ပုဂ္ဂလိကပိုင်များကို PHP အမှားများတွင် PHP အမှားတွင် "ပုဂ္ဂလိကပိုင်များကိုရယူရန်ကြိုးစားနေ" ပြ problem နာကိုဖြေရှင်းရန်နည်းလမ်းများစွာရှိသည်။ မှန်ကန်သောနည်းလမ်းကိုရွေးချယ်ခြင်းသည် developer များကဤပြ problem နာကိုချောချောမွေ့မွေ့ဖြေရှင်းနိုင်ရန်ကူညီနိုင်သည်။