ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
### 框架自动加载是依赖mapping.php文件做 命名空间-路径 的映射 来实现按需加载的 ## 映射文件的加载顺序: core/init/mapping.php common/mapping.php home/common/mapping.php **如果多个映射文件存在相同的定义那么后加载的会覆盖先加载的定义** ## 框架核心所用的映射文件如下: <?php return array( 'z' => LIB . 'z/', //对应路径:core/lib/z/ 'ext' => LIB . 'ext/', //对应路径:core/lib/ext/ 'c' => APP . 'controller/', //对应路径:当前应用目录/controller/ ); ## COMMON目录 <?php return array( '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(); } }