PHP 自动加载类 __autoload() 方法

一个类中有多个方法。

多个方法中,可能用到多个外部class。

如果在每个方法中引入,则需要手写很多次引入,如果在构造方法中引入则有可能造成浪费(比如a方法只需要类c,b方法只需要类d,如果把c和d同时引入则有些浪费)

但是有了 __autoload() 方法,以后就不必为此大伤脑筋了,这个类会在你实例化对象之前自动加载制定的文件。

首次调用某个类时,如果发现不存在,则会自动引入(类名作为参数),并且只会引入一次。

/** 

 * 文件autoload_demo.php 

 */

function  __autoload($className) {  

    $filePath = “project/class/{$className}.php”;  

    if (is_readable($filePath)) {  

        require($filePath);  

    }  

}  

    

if (条件A) {  

    $a = new A();  

    $b = new B();  

    $c = new C();  

    // … 业务逻辑  

} else if (条件B) {  

    $a = newA();  

    $b = new B();  

    // … 业务逻辑  

}

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注