首页 > 代码库 > __autoload() 类文件自动加载函数

__autoload() 类文件自动加载函数

 

这个魔术方法是用来自动加载程序所用到类文件的PHP源文件,这样就避免了我们一个一个自动去require或者include了,这个函数会在试图使用尚未被定义的类时自动调用。通过调用此函数,脚本引擎在 PHP 出错失败前有了最后一个机会加载所需的类,但是我最近看过一篇文章,上面说__autoload()的效率不是很高。以下是示例代码:

 

 1 <?php
 2 功能:在当前页使用类时自动加载该类的文件
 3 参数$className  为类的名称 可自定义
 4 
 5 */
 6 
 7 function __autoload($className){
 8 
 9 $className=strtolower($className);//最好加上这一步,因为类首字母大写,某些系统区分文件名的大小写
10 
11 require("$className.class.php");//加载类文件  One.class.php Two.class.php与本文件在同一目录下
12 
13 echo ‘------------------------------<br>‘;//作为调用时的标记来测试
14 
15 }
16 
17 //以下两个类均未在本文件中定义
18 
19 $o=new One();//使用One类,对其初始化
20 
21 $t=new Two();//使用Two类,对其初始化
22 
23 ?>

 注意这个函数如果需要正常加载,需要将文件名设置成类名(推荐小写).class.php等类名和文件名有某种关联才可以,另外如果这个函数出现异常不能被Catch捕获,将会显示Fatal Error

__autoload() 类文件自动加载函数