spl_autoload_register和子类

时间:2012-02-01 10:24:29

标签: php oop autoload spl-autoload-register

我有一个名为“BaseCore”的类,它只运行所有的spl_autoload_registers();在那个文件中。

class BaseCore{

public function __construct(){
    spl_autoload_register( 'loadClasses' );   
    spl_autoload_register( 'loadConfig' );
    spl_autoload_register( 'loadFMAPI' );
}

我的第二个类扩展了BaseCore,在我想扩展BaseCore的每个新类中,我必须要求/包含BaseCore类。

require_once( 'classes/baseCore.class.php' );

class SchedulerDND extends BaseCore {

但是,这似乎已经过时,而且这是一种旧方法。

所以我想我的问题是,如何在不必编写require_once()的情况下将BaseCore包含到我的子类中;在每个儿童班上?

谢谢!

1 个答案:

答案 0 :(得分:2)

你所有的spl_autoload_register类都应该是某种类型的bootstrap文件 例如,创建bootstrap.php并将所有自动加载调用放在那里。 然后,您将确保始终包含您的引导程序文件 例如,在index.php中需要'bootstrap.php'

这就是它的全部。 你bootstrap.php只加载一次,然后你可以依靠自动加载器加载你的所有类,不需要在你的任何类中都有require或require_once。