[TOC]
控制器||类的加载
理论上 只要你的命名空间是你的类文件所处的路径。
遵循`PSR-2`命名规范和`PSR-4`自动加载规范 基本都可以加载
### 目录和文件
* 目录使用小写+下划线;
* 类库、函数文件统一以`.php`为后缀;
* 类的文件名均以命名空间定义,并且命名空间的路径和类库文件所在路径一致;
* 类文件采用驼峰法命名(首字母大写),其它文件采用小写+下划线命名;
* **类名和类文件名保持一致**,统一采用驼峰法命名(首字母大写);
### 函数和类、属性命名
* 类的命名采用驼峰法(首字母大写),例如`User`、`UserType`,默认不需要添加后缀,例如`UserController`应该直接命名为`User`;
* 函数的命名使用小写字母和下划线(小写字母开头)的方式,例如`get_client_ip`;
* 方法的命名使用驼峰法(首字母小写),例如`getUserName`;
* 属性的命名使用驼峰法(首字母小写),例如`tableName`、`instance`;
* 特例:以双下划线`__`打头的函数或方法作为魔术方法,例如`__call`和`__autoload`;
### 常量和配置
* 常量以大写字母和下划线命名,例如`APP_PATH`;
* 配置参数以小写字母和下划线命名,例如`url_route_on`和`url_convert`;
* 环境变量定义使用大写字母和下划线命名,例如`DEBUG`;
### 数据表和字段
~~你【几乎】可以在任意位置新建模块 然后在新建一个controller文件夹 然后在里面新建类文件 符合命名空间命名规范都可以加载 ~~
#### 【仅支持根目录新建模块 不然url生成会出问题,路由模式3除外】
> pathinfo路由情况下 只能根目录
比如app\controller下新建Index.php
命名空间就是
~~~
namespace app\controller;
~~~