求解下面代码有啥问题

李拜六 2016-03-31 12:08:29
是关于php自动加载文件的一段代码
public static function userAutoload($class_name) {
//先处理确定的(框架中的核心类)
// 类名与类文件映射数组
$framework_class_list = array(
// '类名' => '类文件地址'
'Controller' => FRAMEWORK_PATH . 'Controller.class.php',
'Model' => FRAMEWORK_PATH . 'Model.class.php',
'Factory' => FRAMEWORK_PATH . 'Factory.class.php',
'MySQLDB' => FRAMEWORK_PATH . 'MySQLDB.class.php',
'SessionDB' => TOOL_PATH . 'SessionDB.class.php',
) ;
//判断是否为核心类
if (isset($framework_class_list[$class_name])) {
//是核心类
require $framework_class_list[$class_name];
}
//判断是否为可增加(控制器类,模型类)
//控制器类,截取后是个字符,匹配Controller
elseif (substr($class_name, -10) == 'Controller') {
// 控制器类, 当前平台下controller目录
require CURRENT_CONTROLLER_PATH . $class_name . '.class.php';
}
//模型类,截取后5个字符,匹配Model
elseif (substr($class_name, -5) == 'Model') {
// 模型类,当前平台下model目录
require CURRENT_MODEL_PATH . $class_name . '.class.php';
}
}
/**
* 注册自动加载
*/
private static function _initAutoload() {
spl_autoload_register(array(__CLASS__, 'userAutoload'));
}]
...全文
94 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2016-03-31
  • 打赏
  • 举报
回复
你在哪里调用 _initAutoload 方法的?
李拜六 2016-03-31
  • 打赏
  • 举报
回复
已经解决 是自动加载大小写问题
李拜六 2016-03-31
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
你在哪里调用 _initAutoload 方法的?
在当前类的另一个方法中 通过 static::_initautoload调用了

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧