一个类中有多个方法。
多个方法中,可能用到多个外部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();
// … 业务逻辑
}