這篇文章主要介紹了TP(thinkPHP)框架多層控制器和多級控制器的使用,結合實例形式分析了thinkPHP框架多層控制器和多級控制器的結構、原理及使用方法,需要的朋友可以參考下
本文實例講述了TP(thinkPHP)框架多層控制器和多級控制器的使用。分享給大家供大家參考,具體如下:
多層控制器的目錄結構是這樣的:
├─ Controller 存取控制器
│ ├─UserController.class.php
│ ├─BlogController.class.php
│ ...
├─Event 事件控制器
│ ├─User. 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. ─ConfigController.class.php
│ ...
http://serverName/Home/User/UserType
#http://serverName/Home/Admin/User
'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框架多層控制器與多層控制器的使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!