php面向对象中的魔术方法之__autoload()
在开发大一点的项目的时候常把一个个的独立模块封装成一个类,然后在需要的逻辑里直接include进来就可以用了,可是在要引用多个类的时候就得写多个include。好在php提供了一个魔术方法来解决这个问题,那就是__autoload().__autoload()方法可以自动加载要include的类文件。
注意:1、__autoload()是唯一一个不是写类时原魔术方法。2、__autoload()会按类名严格进行对文件名的大小写匹配,如果发现某个类没有成功加载,请检查文件名和类名的大小写。以下是一个简单的实例代码。(注意文件存放目录)
/test/test.phpfunction __autoload($filename){
if(file_exists('./class/'.$filename.'.class.php')){
include('./class/'.$filename.'.class.php');
}else{
return false;
}
}
$coderbolg = new CoderBolg();
echo $coderbolg->printbolg(); // 输出 欢迎来到蓝色夏威夷的博客.
$bluehawaii = new BlueHawaii();
echo $bluehawaii->printwelcome(); // 输出 welcome to Hawaii.
/test/class/BlueHawaii.class.phpclass BlueHawaii{
function printwelcome(){
return 'welcome to Hawaii. ';
}
}
/test/class/CoderBolg.class.php class CoderBolg{
function printbolg(){
return '欢迎来到蓝色夏威夷的博客. ';
}
}
本文如需转载,请务必注明:转载自:蓝色夏威夷 [http://www.coderbolg.com/]
本文链接地址: http://www.coderbolg.com/content/16.html
本文链接地址: http://www.coderbolg.com/content/16.html


评论列表