您好,登錄后才能下訂單哦!
這篇文章主要介紹thinkphp控制器是什么東西,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
ThinkPHP的控制器是一個類,接受用戶的輸入并調用模型和視圖去完成用戶的需求;控制器層由核心控制器和業務控制器組成,負責應用的調度控制,而業務控制器則由用戶定義的控制器類完成。
本教程操作環境:Windows7系統、thinkphp v5.1版、Dell G3電腦。
ThinkPHP基于MVC(Model-View-Controller,模型-視圖-控制器)模式,并且均支持多層(multi-Layer)設計。
MVC是一個設計模式,它強制性的使應用程序的輸入、處理和輸出分開。使用MVC應用程序被分成三個核心部件:模型(M)、視圖(V)、控制器(C),它們各自處理自己的任務。
控制器(Controller)層
ThinkPHP的控制器是一個類。
ThinkPHP的控制器層由核心控制器和業務控制器組成,核心控制器由系統內部的App類完成,負責應用(包括模塊、控制器和操作)的調度控制,包括HTTP請求攔截和轉發、加載配置等。業務控制器則由用戶定義的控制器類完成。多層業務控制器的實現原理和模型的分層類似,例如業務控制器和事件控制器:
Controller/UserController //用于用戶的業務邏輯控制和調度
Event/UserEvent //用于用戶的事件響應操作
訪問控制器 Home/Controller/UserController.class.php 定義如下:
namespace Home\Controller; use Think\Controller; class UserController extends Controller{ }
事件控制器 Home/Event/UserEvent.class.php 定義如下:
namespace Home\Event; use Think\Controller; class UserEvent extends Controller{ }
UserController負責外部交互響應,通過URL請求響應,例如 http://serverName/User/index,而 UserEvent負責內部的事件響應,并且只能在內部調用:
A('User','Event');
默認的訪問控制器層是Controller,我們可以調整設置如下:
'DEFAULT_C_LAYER' => 'Event', // 默認的控制器層名稱改為Event
所以是和外部隔離的。
多層控制器的劃分也不是強制的,可以根據應用的需要自由分層。控制器分層里面可以根據需要調用分層模型,也可以調用不同的分層視圖(主題)。
在MVC三層中,ThinkPHP并不依賴M或者V,甚至可以只有C或者只有V,這個在ThinkPHP的設計里面是一個很重要的用戶體驗設計,用戶只需要定義視圖,在沒有C的情況下也能自動識別。
以上是“thinkphp控制器是什么東西”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。