1

我构建了一个自动加载方法,基本上如下:

public function load_class($class){
    $path = str_replace('_', '/', $class);
    if(file_exists(get_template_directory() . '/' . $path . '.php')){
        require_once(get_template_directory() . '/' . $path . '.php');
    }
}

我想做的一件事是说:

如果已经需要这个类,那么只需调用它,而不是每次调用、扩展或实例化该类时都必须执行 require_once() 。

我怎么不知道该怎么做……那是我寻求帮助的地方,还是 require_once 本质上是“缓存”了需要的类?我的理解是,每次通话只需要一次。那就是它必须再次要求它的每一个电话......???

4

1 回答 1

1

如果您将其用作自动加载器,则它只会在未首先定义该类时运行。

除此之外,还require_once()跟踪已加载的文件。如果你require_once()再次调用同一个文件,什么都不会发生。

于 2012-11-30T21:28:54.630 回答