php自动加载未声明的类__autoload

作者: dreamfly 分类: php 发布时间: 2015-04-07 23:14

有时候我们在设计php的类的时候,后面忘记了声明,就直接使用了,这回导致致命的错误。

我们必须在使用的时候,引入类文件,但是当类文件很多的时候,我们想让他在使用的时候自己引入,有没有

这么简洁好用的方法呢,答案是有的。

php向我们提供了一系列魔术方法来让我们在错误发生之前进行相应的修改。

其中__autoload 这个魔术方法就可以帮助我们自动加载类。

比如.

我们可以一个公共函数文件,里面重写__autoload函数,

function __autoload($classname){

    require_once '/root/class/'.$classname.'.class.php';         

}

当我们新建一个类的时候,如果找不到这个类,系统就会执行这个函数,并把相应的类名传进去。

如, $person = new Person();//Person类我们没有引入,但是我们知道所有的类文件都放到了/root/class/

下面了,并且类名和文件名是统一的,所以它会自动加载类 /root/class/Person.class.php这个文件。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!