首页内核与基础__autoload 自动加载机制
__autoload 自动加载机制
基于命名空间的路由转路径加载:\Kuoqi\* 与 \App\{模块}\* 两级映射
本页内容
  1. 加载流程
  2. route2path 规则
  3. 驼峰转换规则
  4. 注意事项

加载流程

#步骤说明
1route2path($route)把命名空间转为文件路径
2拼接后缀路径 + $CTL_EXT(.class.php)
3loadfileinclude_once 加载,不可读则返回 false
4首次加载class_exists($route,false) 为 true 时调用 $route::__initialize()
5失败处理默认抛出 Exception 终止;可 ignoreAutoloaderror(true) 忽略

route2path 规则

首段根路径示例
Kuoqi{@CORE}/LibraryKuoqi\Core\View → Library/Core/View.class.php
App{@APP}App\Home\Controller\IndexController → Application/Home/Controller/IndexController.class.php
其它{@ROOT}其余命名空间落在项目根

驼峰转换规则

函数输入输出用途
code2humpuser-managerUserManagerURL/目录 → 类名
hump2codeUserManageruser-manager类名 → URL/表名(连字符)
snakeCode2humpuser_managerUserManager下划线 → 驼峰
snakeHump2codeUserManageruser_manager驼峰 → 下划线

注意事项

route2path 对路径每一段做 code2hump,即只认连字符与驼峰,下划线段不会拆分。
KuoqiPHP v1.05 · 离线静态文档 · 界面基于 KuoqiUI · 返回首页