我想知道是否可以自动加载静态类,就像创建动态自动加载库一样? 我已经完成了php自动加载器的大部分内容,但我真的需要提示自动加载我不想创建对象的静态库。
有没有人有解决方案?请发布或者给我最好的想法来开发相同的。
由于
答案 0 :(得分:2)
是SPL Autoloader将加载类和接口。触发自动加载器后,您可以使用对可自动加载资产的任何引用来触发加载
My_Special_Class::SOME_CONSTANT
将触发加载以及调用或引用任何可见的静态方法或属性。
实际上,利用它是触发命名空间函数自动加载的一种方法。像这样定义一个类文件。
namespace My\Namespace;
abstract class Functions{
const LOADED = true;
}
function func1(){}
function func2(){}
function func3(){}
在您需要My \ Namespace中定义的函数的代码中
if (\My\Namespace\Functions::LOADED){
func1();
func3();
}
对抽象类的引用会触发自动加载器包含定义函数的文件。