本篇文章給大家分享的是有關如何正確的使用ThinkPHP控制器,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
成都創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站建設、網(wǎng)站建設與策劃設計,潞城網(wǎng)站建設哪家好?成都創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設十年,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:潞城等地區(qū)。潞城做網(wǎng)站價格咨詢:028-86922220最基本的控制器:
控制器的名稱采用駝峰法命名(首字母大寫),控制器文件位于 Application/Home/Controller/IndexController.class.php
IndexController控制器類的hello方法就是操作方法,訪問下面的URL地址:
http://serverName/Home/Index/hello
就會輸出"hello"前置和后置操作:
"; } public function index(){ echo "index
"; } public function _after_index(){ echo "index.after
"; } }配置ACTION_SUFFIX改變操作方法書寫方式:
因為操作方法就是控制器的一個方法,所以遇到有和系統(tǒng)的關鍵字沖突的方法可能就不能定義了,這個時候我們可以設置操作方法的后綴來解決,例如
'ACTION_SUFFIX' => 'Action', // 操作方法后綴
設置操作方法的后綴為Action,這樣,控制器的操作方法定義調(diào)整為:空控制器和空操作方法:
空操作是指系統(tǒng)在找不到請求的操作方法的時候,會定位到空操作(_empty)方法來執(zhí)行,利用這個機制,我們可以實現(xiàn)錯誤頁面和一些URL的優(yōu)化。
上圖所示,當訪問:
http://serverName/index.php/Home/City/beijing/
由于City控制器并沒有定義beijing、shanghai或者shenzhen操作方法,因此系統(tǒng)會定位到空操作方法 _empty中去解析,_empty方法的參數(shù)就是當前URL里面的操作名,因此會看到依次輸出的結果是:你是怎么找到我的?
操作綁定到類: (作用:可以實現(xiàn)為每個操作方法定義一個類,而不是控制器類的一個方法)
以URL訪問為 http://serverName/Home/Index/index為例,
原來的控制器文件定義位置為:Application/Home/Controller/IndexController.class.php
控制器類的定義如下:
namespace Home\Controller; use Think\Controller; class IndexController extends Controller{ public function index(){ echo '執(zhí)行Index控制器的index操作'; } }可以看到,實際上我們調(diào)用的是 Home\Controller\IndexController 類的index方法。
通過配置文件設置參數(shù)
'ACTION_BIND_CLASS' => True,
設置后,控制器文件位置改為:Application/Home/Controller/Index/index.class.php控制器類的定義如下:
namespace Home\Controller\Index; use Think\Controller; class index extends Controller{ public function run(){ echo '執(zhí)行Index控制器的index操作'; } }現(xiàn)在,我們調(diào)用的其實是 Home\Controller\Index\index 類的run方法。
以上就是如何正確的使用ThinkPHP控制器,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學到更多知識。更多詳情敬請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)頁名稱:如何正確的使用ThinkPHP控制器-創(chuàng)新互聯(lián)
URL標題:http://weahome.cn/article/jpego.html