Daily Php Development တွင် "Fatal Error: Interface: Interface 'XXX' Interface 'မတွေ့ရပါက PHP သည်သတ်မှတ်ထားသော interface ကိုရှာမတွေ့နိုင်ပါ။ ဘုံအကြောင်းပြချက်များတွင်ပျောက်ဆုံးနေသော interface ဖိုင်များ, မှားယွင်းသောရည်ညွှန်းလမ်းကြောင်းများ,
ပထမ ဦး စွာဖိုင်သည်အမှန်တကယ်တည်ရှိသည်ကိုသင်အတည်ပြုရန်လိုအပ်သည်။ အမှားမက်ဆေ့ခ်ျကို အခြေခံ. interface name နှင့်၎င်း၏လမ်းကြောင်းကိုရှာပါ။ ပျောက်ဆုံးနေပါက interface ကို backup ကိုပြန်ယူခြင်းသို့မဟုတ်ပြန်လည်ပတ်ခြင်းမှပြန်လည်တည်ဆောက်ရန်လိုအပ်သည်။
interface ဖိုင်တည်ရှိနေစဉ်အမှားတစ်ခုသတင်းပို့နေစဉ်၎င်းသည်ဖိုင်လမ်းကြောင်းရည်ညွှန်းချက်တွင်အမှားတစ်ခုဖြစ်နိုင်သည်။ PHP မှလမ်းကြောင်းများမှာစာလုံးအကြီးအသေးအရေးအကြီးဖြစ်မှုနှင့်ဆွေမျိုးနှင့်အကြွင်းမဲ့လမ်းကြောင်းများကြောင့်လည်းအကျိုးသက်ရောက်နိုင်သည်။ လမ်းကြောင်းကိုတိကျစွာရေးသားထားကြောင်းသေချာပါစေ။
ဥပမာအားဖြင့်, interface ဖိုင်၏တည်နေရာမှာ - /path/toTo/inantherface.php ဖြစ်ပါက Code ရှိရည်ညွှန်းလမ်းကြောင်းသည် / path/interface.php , အခြား directory လမ်းကြောင်းမဟုတ်ကြောင်းသေချာစေပါ။
အကယ်. interface သည် namespace ကိုအသုံးပြုပါက interface ကိုမခေါ်မီ Namespace ကို အသုံးပြု. အသုံးပြုမှု ကြေငြာချက်ကို အသုံးပြု. မိတ်ဆက်ပေးရမည်။ ဒီလိုမှမဟုတ်ရင် PHP သည် interface ကိုရှာမတွေ့နိုင်ပါ။
interface definition သည် namespace namespace mynespace ကိုအသုံးပြုသည်ဟုယူဆခြင်း,
<span class="fun">myNOMSTAME \ Myninalinalface ကိုသုံးပါ။</span>
PHP သည်အမည်များကို interface အမည်များကိုအထိခိုက်မခံပါ။ ဒီကိစ်စနဲ့မတူဘူးဆိုရင်တောင်က "interface undefined" အမှားတစ်ခုဖြစ်ပေါ်စေလိမ့်မယ်။ ထို့ကြောင့်အဓိပ္ပါယ်နှင့်ရည်ညွှန်းချက်သည်တသမတ်တည်းဖြစ်ကြောင်းသေချာစေရန်လိုအပ်သည်။
အဆိုပါ interface ကိုအားဖြင့်သတ်မှတ်အဖြစ်:
<span class="fun">interface interface iningface {... }</span>
ထို့နောက်ကိုးကားချက်လည်းဖြစ်ရမည်။
<span class="fun">အကောင်အထည်များ interfacename</span>
<?php
// အဆိုပါ interface ကိုအတွက်သတ်မှတ်ဖြစ်ပါတယ် interface.php ဖိုင်ထဲမှာ
interface MyInterface {
public function foo();
}
// အမှားခေါ်ဆိုပါ(namespace နိဒါန်းပျောက်ဆုံး)
namespace MyNamespace;
class MyClass implements MyInterface {
public function foo() {
echo 'Hello World';
}
}
// မှန်ကန်စွာခေါ်ဆိုပါ(namespace မိတ်ဆက်)
use MyNamespace\MyInterface;
class MyClass implements MyInterface {
public function foo() {
echo 'Hello World';
}
}
$myObject = new MyClass();
$myObject->foo();
အထက်ပါနည်းလမ်းများမှတစ်ဆင့် PHP ရှိ undefined interfaces ၏ပြ problem နာကိုထိထိရောက်ရောက်ရှာဖွေတွေ့ရှိနိုင်သည်။ ၎င်းသည်ပရိုဂရမ်၏ပုံမှန်လည်ပတ်မှုကိုသေချာစေရန်သာမက Code ၏ထိန်းသိမ်းနိုင်မှုနှင့်ဖွံ့ဖြိုးတိုးတက်မှုစွမ်းရည်ကိုလည်းတိုးတက်စေသည်။