开发场景
传统MVC架构的C(controller)层,view视图与model模型之间的调配。
通用控制器
Index控制器为通用控制器,默认无需创建新的控制器及任何改动,根据以下路由文档说明使用即可。
   如需在控制器中增加额外的业务处理,如API - Sign验签业务,直接在Index控制器类中的构造方法中实现即可。
自定义控制器
当业务模块化管理时,可能会自定义创建多个controller控制器,而不依赖于框架自带的Index通用控制器,如下为创建控制器示例:
<?php
class Example{
public function one($public_var){//类方法名请与model模型文件名对应
//$public_var数据类型为array,包含了框架变量,如数据库连接变量等,不用在类方法中再次global引入。
//函数中写你的业务,默认在logic中完成;
response($code,$msg,$data);//调用API数据返回运行类库,该类库用于返回数据给请求方,必须实现,方法实参为选填项,如果需要在controller控制器中返回数据请填入。第一个参数为code【数据类型为int】、第二个参数为message【数据类型为string】、第三个参数为返回的数据【数据类型不限】。
//通常默认在model模型/logic逻辑中返回数据给请求方,结构请参考【框架变量-$response】
}
public function two($public_var){
response();
}
}
   当我们定义了多个控制器时,有一些公共类需要统一维护,而不需要在每个控制器中重复维护,此时直接将类写入Index控制器中并
在指定控制器中继承类即可。
路由
路由示例:http://127.0.0.1/m/v/p/index/model/param/key1=value&key2=value
· m/为application应用目录路径
· v/p/为presenter/controller/控制器目录路径
· index/为Index控制器文件名,不包含.php扩展名,如自定义控制器请更换index为自定义控制器名称;
· model/为model模型目录下指定文件名,不包含.php扩展名;
· param/为路由参数,用于判断model文件下多接口业务分发对接,用$query_param[‘key’],取值可选项;
· key1=value为get请求入参,多参数用&连接,用$query_get['key']取值,可选项;
   默认已对路由进行重写,Apache/Nginx服务器请支持.htaccess/nginx.htaccess,否则请按照以下写法:
http://127.0.0.1/application/presenter/controller/example.php/model/param/?key1=value&key2=value
路由重写
第一步 在config_route.php路由配置文件中修改常量ROUTE_RUN的值为1,开启配置运行;
第二步 在config_route.php路由配置文件中修改常量API_URL_ROUTE的各个值用于API-URI重写;
第三步 在config_route.php路由配置文件中修改常量APPLICATION_RENAME的各个值用于改变application下各个初始化目录名;
· 修改后目录名为修改的目录名+下划线+目录标识,如controller目录名改为init,则修改后控制器目录名为init_controller;
· 如果将目录名改为初始值,即model、server、presenter、controller、logic、view,则目录名不会拼接+下划线+目录标识,恢
   复初始化目录名。
第四步 通过浏览器运行框架入口文件,如访问http://127.0.0.1则以上配置即可生效;
第五步 在config_route.php路由配置文件中修改常量ROUTE_RUN的值为0,关闭配置运行;
   路由重写后路由URI将改变
· 更改常量API_URL_ROUTE值,当服务器支持.htaccess/nginx.htaccess时,路由URI中的M/V/P需替换为相应更改值。
· 更改常量APPLICATION_RENAME值,当服务器支不持.htaccess/nginx.htaccess时,路由URI中的路径需替换为相应更改值。如:
   http://127.0.0.1/application/presenter/controller/index.php/model
   当更改application/presenter/controller目录名后在路由URI中需相应替换
重写支持
   Apache服务器的路由重定向文件为框架根目录下的.htaccess,Nginx服务器的路由重定向文件为框架根目录下的nginx.htaccess。
   Apache默认支持.htaccess,如果不支持请自行配置解决;Nginx默认不支持nginx.htaccess,请按照以下方法配置:
· 打开Nginx服务器的vhosts.conf,在该配置文件中引入nginx.htaccess,如下标黑部分为引入项,注意路径。
   server {
      listen 80;
      server_name localhost;
      root "D:/wamp/www/easylt";
      location / {
         index index.php index.html;
         autoindex off;
         include D:/wamp/www/easylt/nginx.htaccess;
      }
   }
· 如果项目采用宝塔等面板,可以复制nginx.htaccess中的内容到站点-设置-伪静态中即可。
· 首次配置nginx.htaccess或后续路由重写都需重启Nginx服务器才可生效。