本文實(shí)例講述了TP(thinkPHP)框架多層控制器和多級(jí)控制器的使用。分享給大家供大家參考,具體如下:
多層控制器的目錄結(jié)構(gòu)是這樣的:
├─Controller 訪問(wèn)控制器
│ ├─UserController.class.php
│ ├─BlogController.class.php
│ ...
├─Event 事件控制器
│ ├─UserEvent.class.php
│ ├─BlogEvent.class.php
│ ...
給App應(yīng)用添加多層控制器,不需添加任何參數(shù),只需按照如上的方式直接建文件即可。
多層控制器實(shí)例化:
/*
* 多層控制器實(shí)例化 即和訪問(wèn)控制器Controller同級(jí)目錄的Service時(shí) 可用D方法或A方法
* 注:訪問(wèn)控制器的名稱是通過(guò)DEFAULT_C_LAYER設(shè)置的,默認(rèn)是Controller,訪問(wèn)控制器負(fù)責(zé)外部交互響應(yīng),
其它的控制器層和外部隔離,只能內(nèi)部調(diào)用。定義其他的控制器層,則不一定必須要繼承系統(tǒng)的Controller類或其子類,通常需要輸出模版的時(shí)候才需要繼承Controller類。
*/
D('Admin', 'Service');
//或者
A('User','Event');
A('Admin/Blog','Event'); //假設(shè)當(dāng)前模塊是Home模塊
// 實(shí)例化Home模塊的User事件控制器
$User = new \Home\Event\UserEvent();
// 實(shí)例化Admin模塊的Blog事件控制器
$Blog = new \Admin\Event\BlogEvent();
而多級(jí)控制器的目錄結(jié)構(gòu)是這樣的:
├─Controller 訪問(wèn)控制器
│ ├─User User分級(jí)(組)
│ │ ├─UserTypeController.class.php
│ │ ├─UserAuthController.class.php
│ ...
│ ├─Admin Admin分級(jí)(組)
│ │ ├─UserController.class.php
│ │ ├─ConfigController.class.php
│ ...
其訪問(wèn)格式:
http://serverName/Home/User/UserType
http://serverName/Home/Admin/User
設(shè)置為多級(jí)控制器是需要設(shè)置配置參數(shù)的,即設(shè)置控制器的分級(jí)層次,例如設(shè)置2級(jí)目錄的控制器層,如下:
其命令空間是這樣的;
?php
namespace Home\Controller\Admin;
use Think\Controller;
class IndexController extends Controller {
public function hello(){
echo 'hello';
}
public function test(){
echo 'test';
}
}
多級(jí)控制器的實(shí)例化:
可以直接實(shí)例化
// 實(shí)例化Home模塊的User控制器
$User = new \Home\Controller\User\UserTypeController();
// 實(shí)例化Admin模塊的Blog控制器
$Blog = new \Admin\Controller\Admin\UserController();
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對(duì)大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- ThinkPHP控制器間實(shí)現(xiàn)相互調(diào)用的方法
- ThinkPHP中URL路徑訪問(wèn)與模塊控制器之間的關(guān)系
- thinkphp3.2實(shí)現(xiàn)跨控制器調(diào)用其他模塊的方法
- thinkphp3.2實(shí)現(xiàn)上傳圖片的控制器方法
- thinkphp控制器調(diào)度使用示例
- ThinkPHP3.2.2的插件控制器功能
- Thinkphp 空操作、空控制器、命名空間(詳解)
- thinkPHP通用控制器實(shí)現(xiàn)方法示例
- thinkPHP控制器變量在模板中的顯示方法示例
- ThinkPHP5.0框架控制器繼承基類和自定義類示例