TP(thinkPHP)框架多层控制器和多级控制器的使用示例

这篇文章主要介绍了TP(thinkPHP)框架多层控制器和多级控制器的使用,结合实例形式分析了thinkPHP框架多层控制器和多级控制器的结构、原理及使用方法,需要的朋友可以参考下

本文实例讲述了TP(thinkPHP)框架多层控制器和多级控制器的使用。分享给大家供大家参考,具体如下:

多层控制器的目录结构是这样的:

├─Controller 访问控制器
│  ├─UserController.class.php
│  ├─BlogController.class.php
│  ...
├─Event 事件控制器
│  ├─UserEvent.class.php
│  ├─BlogEvent.class.php
│  ...

给App应用添加多层控制器,不需添加任何参数,只需按照如上的方式直接建文件即可。

多层控制器实例化:


/*
 * 多层控制器实例化 即和访问控制器Controller同级目录的Service时 可用D方法或A方法
 * 注:访问控制器的名称是通过DEFAULT_C_LAYER设置的,默认是Controller,访问控制器负责外部交互响应,
    其它的控制器层和外部隔离,只能内部调用。定义其他的控制器层,则不一定必须要继承系统的Controller类或其子类,通常需要输出模版的时候才需要继承Controller类。
 */
D('Admin', 'Service');
//或者
A('User','Event');
A('Admin/Blog','Event');  //假设当前模块是Home模块
// 实例化Home模块的User事件控制器
$User = new \Home\Event\UserEvent();
// 实例化Admin模块的Blog事件控制器
$Blog = new \Admin\Event\BlogEvent();

而多级控制器的目录结构是这样的:

├─Controller 访问控制器
│  ├─User User分级(组)
│  │  ├─UserTypeController.class.php
│  │  ├─UserAuthController.class.php
│  ...
│  ├─Admin Admin分级(组)
│  │  ├─UserController.class.php
│  │  ├─ConfigController.class.php
│  ...

其访问格式:

http://serverName/Home/User/UserType
http://serverName/Home/Admin/User

设置为多级控制器是需要设置配置参数的,即设置控制器的分级层次,例如设置2级目录的控制器层,如下:


'CONTROLLER_LEVEL'   => 2,

其命令空间是这样的;


<?php
namespace Home\Controller\Admin;
use Think\Controller;
class IndexController extends Controller {
  public function hello(){
    echo 'hello';
  }
  public function test(){
    echo 'test';
  }
}

多级控制器的实例化:

可以直接实例化


// 实例化Home模块的User控制器
$User = new \Home\Controller\User\UserTypeController();
// 实例化Admin模块的Blog控制器
$Blog = new \Admin\Controller\Admin\UserController();

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

这篇文章主要介绍了thinkPHP实现基于ajax的评论回复功能,结合实例形式分析了thinkPHP实现ajax评论回复所涉及的控制器、视图、样式、js使用post进行ajax提交、并附带了相应的SQL语句,需要的朋友可以参考下
这篇文章主要介绍了ThinkPHP5.0 图片上传生成缩略图实例代码说明,需要的朋友可以参考下
这篇文章主要介绍了thinkPHP框架实现的短信接口验证码功能,涉及基于thinkPHP的ajax提交、随机数生成、短信接口调用、cookie操作等相关实现技巧,需要的朋友可以参考下
这篇文章主要介绍了thinkPHP3.2.2框架行为扩展,结合实例形式分析了thinkPHP3.2.2框架行为扩展原理、实现方法及相关操作注意事项,需要的朋友可以参考下
这篇文章主要介绍了针对thinkPHP5框架存储过程bug重写的存储过程扩展类,结合完整实例形式给出了修复thinkPHP5存储过程原有bug的扩展类定义与使用方法,需要的朋友可以参考下
这篇文章主要介绍了ThinkPHP框架实现的邮箱激活功能,结合实例形式分析了thinkPHP使用class.smtp.php及class.phpmailer.php类文件进行邮件发送实现激活功能的具体操作技巧,需要的朋友可以参考下