首页
社区
文档
日志
登入
注册
文 档
开始
目录结构
配置文件
常量
视图
控制器
文件上传
自动加载类文件
路由
图片验证码
函数
缓存
数据模型
基本操作
数据添加
数据删除
数据更新
数据查询
where条件
自动验证
数据分页
子查询
原生SQL语句的使用
数据缓存
连接Sqlite
内 文 索 引
>框架自动加载是依赖mapping.php文件做 命名空间-路径 的映射 来实现按需加载的 >当使用的其它SDK包中含有自动加载函数 spl_autoload_register() 时会造成冲突 解决方法是将SDK包中的 spl_autoload_register() 方法替换为 zautoload()方法。 ## 映射文件的加载顺序: core/init/mapping.php common/mapping.php home/common/mapping.php **如果多个映射文件存在相同的定义那么后加载的会覆盖先加载的定义** ## 框架核心所用的映射文件如下: <?php return [ 'z' => LIB . 'z/', //对应路径:core/lib/z/ 'ext' => LIB . 'ext/', //对应路径:core/lib/ext/ 'c' => APP . 'controller/', //对应路径:当前应用目录/controller/ ]; ## COMMON目录 <?php return [ 'm' => APP . 'model/', //对应路径:应用目录/model/ 'common' => COMMON . 'model/', //对应路径:common/model/ 'lib' => COMMON . 'lib/', //对应路径:common/lib/ ]; ## 示例 例如我们在 /home/model 目录下创建了一个 user.class.php 的类内容如下: <?php namespace m; //注意这里的命名空间 m 是对应的前面映射文件的 'm' class user{ private $name = '张三'; function say(){ echo '我叫' . $this->name; } } 控制器中就可以直接使用 new \m\user() 来实例化这个类 而不用事先加载这个类文件 <?php namespace c; use \z\controller; class index extends controller{ static function index(){ $m = new \m\user(); $m->say(); } }