spl_autoload_call လုပ်ဆောင်ချက်
spl_autoload_call လုပ်ဆောင်ချက်သည် သတ်မှတ်ထားသော class ကို ဖွင့်ရန် ကြိုးစားရာတွင် မှတ်ပုံတင်ထားသည့် autoloader အားလုံးကို ခေါ်ယူပါသည်။ autoloader များကို မှတ်ပုံတင်ပေးသော spl_autoload_register နှင့် မတူဘဲ၊ ဤလုပ်ဆောင်ချက်သည် ၎င်းတို့ကို တိုက်ရိုက် ခေါ်ယူဆောင်ရွက်ပါသည်။ တစ်ခုတည်းသော parameter မှာ ဖွင့်ရန်လိုအပ်သော class ၏ အမည်ဖြစ်သည်။
ဝါကျဖွဲ့ပုံ
spl_autoload_call(string $class_name): void
ဥပမာ
autoloader မပါဘဲ မရှိသော class တစ်ခုကို ဖွင့်ရန် ကြိုးစားကြည့်ပါမည်။
<?php
spl_autoload_call('NonExistentClass');
?>
ကုဒ်အလုပ်လုပ်ဆောင်ချက်၏ ရလဒ် (မှတ်ပုံတင်ထားသော autoloader များ မရှိပါက error ဖြစ်မည်)။
// Autoloader များ မှတ်ပုံတင်မထားပါက ဘာမျှမဖြစ်ပါ။
ဥပမာ
ရိုးရှင်းသော autoloader တစ်ခု ဖန်တီး၍ class တစ်ခုကို ဖွင့်ရန် ကြိုးစားကြည့်ပါမည်။
<?php
spl_autoload_register(function($class) {
echo "Class ကို ဖွင့်ရန် ကြိုးစားနေသည်: $class\n";
});
spl_autoload_call('TestClass');
?>
ကုဒ်အလုပ်လုပ်ဆောင်ချက်၏ ရလဒ်။
Class ကို ဖွင့်ရန် ကြိုးစားနေသည်: TestClass
ဥပမာ
Autoloader အများအပြားနှင့် လုပ်ဆောင်ချက်ကို စစ်ဆေးကြည့်ပါမည်။
<?php
spl_autoload_register(function($class) {
echo "ပထမ Autoloader: $class\n";
});
spl_autoload_register(function($class) {
echo "ဒုတိယ Autoloader: $class\n";
});
spl_autoload_call('MyClass');
?>
ကုဒ်အလုပ်လုပ်ဆောင်ချက်၏ ရလဒ်။
ပထမ Autoloader: MyClass
ဒုတိယ Autoloader: MyClass
အခြားကြည့်ရှုရန်
-
spl_autoload_register လုပ်ဆောင်ချက်၊
သည် autoloader ကို မှတ်ပုံတင်ပေးသည်။ -
spl_autoload_functions လုပ်ဆောင်ချက်၊
သည် autoloader များကို ပြန်ပေးသည်။ -
class_exists လုပ်ဆောင်ချက်၊
သည် class ကို စစ်ဆေးပေးသည်။