欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

php中使用__autoload()自动加载未定义类的实现代码

程序员文章站 2022-11-24 13:08:32
下面是一段使用__autoload()的代码,供大家学习参考: 复制代码 代码如下:

下面是一段使用__autoload()的代码,供大家学习参考:

复制代码 代码如下:

<?php
/**
* 自动加载相关类库文件
*/
function __autoload($classname){
if(substr($classname,-6)=="action"){
include app_path.'controllers/'.$classname.'.class.php';
}elseif(substr($classname, -5)=="model"){
include app_path.'models/'.$classname.'.class.php';
}elseif($classname=="smarty"){
include system_path.'smarty/smarty.class.php';
}else{
include app_path.'common/'.$classname.'.class.php';
}
}
?>

另一种包含路径的方法:

复制代码 代码如下:

<?php
function __autoload($class_name) {
$path = str_replace('_', directory_separator, $class_name);
require_once $path.'.php';
}
?>


说明:将下划线转换为目录分隔符(directory_separator),这样做即可以有效管理库文件,又解决了跨平台的问题。