လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> လက်ရှိပတ် 0 န်းကျင်သည် Spl_Autoload_Unrogister ကို အသုံးပြု. မည်သို့ဆုံးဖြတ်နိုင်မည်လား။

လက်ရှိပတ် 0 န်းကျင်သည် Spl_Autoload_Unrogister ကို အသုံးပြု. မည်သို့ဆုံးဖြတ်နိုင်မည်လား။

gitbox 2025-06-22

1 ။ spl_autoload_Unregister () ၏အခန်းကဏ် ence ကိုနားလည်ပါ။

SPL_Autoload_Unregister () function ကို SPL (Standard PHP Library) Autolead stack မှယခင်မှတ်ပုံတင်ထားသော Autoloader ကိုဖယ်ရှားရန်အသုံးပြုသည်။ အခြေခံအသုံးပြုမှုမှာအောက်ပါအတိုင်းဖြစ်သည် -

 <span><span><span class="hljs-title function_ invoke__">spl_autoload_unregister</span></span><span>(</span><span><span class="hljs-string">'my_autoloader'</span></span><span>);
</span></span>

အထက်ပါကုဒ်တွင် 'my_autoloader' သည် သင်ယခင်က spl_autoload_register () မှတဆင့်သင်ယခင်ကမှတ်ပုံတင်ခဲ့သော autooloader ဖြစ်သည်။ ဤလုပ်ဆောင်မှုသည်ကျွန်ုပ်၏ thouutoloader မှ my_autoloader ကို ဖယ်ရှားပေးသည်။

2 ။ PHP ပတ်ဝန်းကျင် spl_autoload_Unregister () ကိုထောက်ပံ့ခြင်းရှိမရှိဆုံးဖြတ်ရန် ()

တကယ်တော့ spl_autoload_Unregister () သူ့ဟာသူသည်အထူး PHP ပတ်ဝန်းကျင်သို့မဟုတ် configuration အပေါ်မူတည်သည်မဟုတ်။ PHP ဗားရှင်းသည် 5.1.2 (ဤအင်္ဂါရပ်သည် PHP 5.1.2 မှစတင်သည်အထိသီအိုရီအရသီအိုရီအရအလုပ်လုပ်သည်။ သို့သော် SPL_AUTOLOADOADREDREDIDIDION တွင်စနစ်တကျအလုပ်လုပ်ရန်သော့ချက်သည် spl_autoutoload_UREGister () ကို anoloader ကိုမှတ်ပုံတင်ရန်,

ထို့ကြောင့်လက်ရှိ PHP ပတ် 0 န်းကျင် spl_autoload_Unregister ကို အထောက်အကူပြုနိုင်မလားဆုံးဖြတ်ရန်,

2.1 PHP ဗားရှင်းကိုစစ်ဆေးပါ

ပထမ ဦး စွာလက်ရှိ PHP ဗားရှင်းကိုအတည်ပြုပါ။ spl_autoload_unregister () သည် PHP ဗားရှင်း 5.1.2 နှင့်အထက်တွင်သာထောက်ပံ့သောအင်္ဂါရပ်တစ်ခုဖြစ်သည်။ အကယ်. သင်၏ PHP ဗားရှင်းသည် 5.1.2 ထက်နိမ့်ပါက Spl_autoload_Unregister () မရရှိနိုင်ပါ။ လက်ရှိ PHP version ကို phpversion () function ကို ဖြတ်. ရနိုင်သည်။

 <span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">version_compare</span></span><span>(PHP_VERSION, </span><span><span class="hljs-string">'5.1.2'</span></span><span>, </span><span><span class="hljs-string">'&gt;='</span></span><span>)) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"PHP ဗားရှင်းအထောက်အပံ့ spl_autoload_unregister()"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"PHP မူကွဲကိုမပံ့ပိုးပါ spl_autoload_unregister()"</span></span><span>;
}
</span></span>

2.2 autoloader မှန်ကန်စွာမှတ်ပုံတင်ထားခြင်းရှိမရှိစစ်ဆေးပါ

အကယ်. သင်၏ PHP ဗားရှင်းသည်ဤအင်္ဂါရပ်ကိုအထောက်အကူပြုပါက autoloader ကိုမှတ်ပုံတင်ထားကြောင်းသေချာပါစေ။ Spl_Autoload_Functions () ကို သုံး. လက်ရှိမှတ်ပုံတင်ထားသော autoloader ကိုကြည့်ရှုရန်။ အကယ်. Reward Array သည်အချည်းနှီးမပါပါက 0 ိုင်အားမှတ်ပုံတင်ထားပြီး Spl_autoload_Unregister () spl_autoload_unregister () ကို ပုံမှန်အသုံးပြုနိုင်သည်။

 <span><span><span class="hljs-variable">$autoloaders</span></span><span> = </span><span><span class="hljs-title function_ invoke__">spl_autoload_functions</span></span><span>();
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">count</span></span><span>(</span><span><span class="hljs-variable">$autoloaders</span></span><span>) &gt; </span><span><span class="hljs-number">0</span></span><span>) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Autoloader သည်လက်ရှိမှတ်ပုံတင်ထားသည်"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"အလိုအလျောက် loader မှတ်ပုံတင်ခြင်းမရှိပါ"</span></span><span>;
}
</span></span>

2.3 ပုံမှန် autoloader uninstalled ရှိမရှိစစ်ဆေးပါ

PHP သည်ပုံမှန်အားဖြင့်အလိုအလျောက်တင်ဆောင်သည့်ယန္တရားတစ်ခုဖြစ်ပြီးအထူးသဖြင့် Spl_autoload () သည် ပုံမှန်အားဖြင့်အခြေခံ Loader ကိုမှတ်ပုံတင်သည်။ ဤ default loader ကို uninstall လုပ်ရန်သင်ကြိုးစားပါကပြ problems နာများကြုံတွေ့ရနိုင်သည်။ ဤအရာကိုရှောင်ရှားရန်သင်သည် default autoloader ကို uninalling မဟုတ်ကြောင်း ဦး စွာ ဦး စွာသင်ကိုယ်တိုင်သေချာစွာစစ်ဆေးနိုင်သည်။

ပုံမှန် loader မှတ်ပုံတင်ခြင်းသည်သင်၏စိတ်ကြိုက် loader ကို 0 င်ရောက်စွက်ဖက်လိမ့်မည်မဟုတ်ပါ။ ဒါကြောင့် uninstall လုပ်ဖို့မကြိုးစားမီအခြားမှတ်ပုံတင်ထားသော autoloaders ရှိမရှိစစ်ဆေးနိုင်သည်။

3 ။ spl_autoload_unregister () မှန်ကန်စွာသုံးပါ

SPL_Autoload_Unregister () ကိုခေါ်သည့်အခါသေချာအောင်လုပ်ပါ။ ဥပမာအားဖြင့်:

 <span><span><span class="hljs-comment">// autoloader မှတ်ပုံတင်ပါ</span></span><span>
</span><span><span class="hljs-title function_ invoke__">spl_autoload_register</span></span><span>(function (</span><span><span class="hljs-variable">$class</span></span><span>) {
    </span><span><span class="hljs-keyword">include</span></span><span> </span><span><span class="hljs-string">'path/to/classes/'</span></span><span> . </span><span><span class="hljs-variable">$class</span></span><span> . </span><span><span class="hljs-string">'.php'</span></span><span>;
});

</span><span><span class="hljs-comment">// အဆိုပါ autoloader ကိုအောက်ပါနည်းလမ်းများအတွက် uninstall နိုင်ပါတယ်</span></span><span>
</span><span><span class="hljs-title function_ invoke__">spl_autoload_unregister</span></span><span>(function (</span><span><span class="hljs-variable">$class</span></span><span>) {
    </span><span><span class="hljs-keyword">include</span></span><span> </span><span><span class="hljs-string">'path/to/classes/'</span></span><span> . </span><span><span class="hljs-variable">$class</span></span><span> . </span><span><span class="hljs-string">'.php'</span></span><span>;
});
</span></span>

သို့သော်အမည်မသိလုပ်ဆောင်ချက်များကို autoloader တစ်ခုအဖြစ်အသုံးပြုသောအခါ SPL_Autoload_Unregister () မှတဆင့်၎င်းကိုတိုက်ရိုက်ချခြင်းကပျက်ကွက်နိုင်သည့်အတွက်, ၎င်းကို uninstall လုပ်ရန်အတွက်အမည်မသိ function ကိုအမည်ပေးထားသော function တစ်ခုထဲသို့ ဦး စွာ adcapsult သို့မဟုတ် callable object method ကိုသုံးရန်ပထမ ဦး ဆုံး encapsulate လုပ်ရန်လိုအပ်သည်။

4 ။ အကျဉ်းချုပ်

လက်ရှိပတ်ဝန်းကျင်သည် spl_autoload_Unregister ကို သုံး. autoloader ကို uninstall လုပ်ခြင်းရှိမရှိဆုံးဖြတ်ရန်မှာသော့ချက်မှာ -

  • PHP ဗားရှင်းသည် 5.1.2 ထက်ကြီးကြောင်းသေချာပါစေ။

  • autoloader ကိုမှန်ကန်စွာမှတ်ပုံတင်ရန် Spl_Autoload_register () ကိုသုံးပါ။

  • မှတ်ပုံတင်ထားသော Autoloader သည်လက်ရှိတည်ရှိနေကြောင်းအတည်ပြုပါ။ SPL_Autoload_Functions () မှတဆင့်စစ်ဆေးနိုင်သည်။

ဤအခြေအနေများကိုပြည့်မီနေသရွေ့ Spl_autoload_Unregister () သည် ပုံမှန်အားဖြင့်ပုံမှန်အားဖြင့်အလုပ်လုပ်နိုင်ပြီး PHP ပတ်ဝန်းကျင်ကန့်သတ်ထားနိုင်မည်မဟုတ်ချေ။