我正在使用
function Autoload($ClassName) {
if (is_readable(CLASSES.'/' . strtolower($ClassName) . '.class')){
require(CLASSES.'/' . strtolower($ClassName) . '.class');
}
}
spl_autoload_register("Autoload");
$site = new site();
$theme = new theme();
我将使用的类的自动加载功能。 当我尝试在我的主题目录中使用$ theme->函数时,我正在
Undefined variable: theme in
我可以通过将$theme = new theme();
放在调用它的php文件的顶部来解决这个问题,但据我所知,自动加载是为了摆脱这样做的必要性。我用来注册课程的代码是否有问题,或者我误解了自动加载背后的原因?
我的旧方法
function LoadClasses() {
foreach(glob(CLASSES.'/'.'*.class') as $classfile) {
require $classfile;
}
}