Thinkphp5基礎——08 控制器
前置操作
設定 beforeActionList屬性
,
指定某個方法為其他方法的前置操作,陣列鍵名為需要呼叫的前置方法名,無值的話為當前控制器下所有方法的前置方法。
['except' => '方法名,方法名']
表示這些方法不使用前置方法
['only' => '方法名,方法名']
表示只有這些方法使用前置方法。
例子
下面例子,訪問hello方法時,將會先執行first方法。
class Index extends Controller
{
protected $beforeActionList = [
'first' => ['only'=>'hello'],
];
protected function first()
{
echo 'first<br/>';
}
public function hello()
{
return 'hello';
}
}
頁面跳轉
使用方法
-
繼承think\Controller
-
呼叫success()、error()方法
模板相關
預設模板
地址: …/application/tpl/dispatch_jump.tpl,
可以在config目錄下的app.php裡面修改'dispatch_error_tmpl'
以及'dispatch_success_tmpl'
屬性。
模板變數
$data 要返回的資料
$msg 頁面提示資訊
$code 返回的code
$wait 跳轉等待時間 單位為秒
$url 跳轉頁面地址
空操作
系統在找不到指定的操作方法的時候,會自動執行空操作 _empty 方法。
小例子
<?php
namespace app\index\controller;
class City
{
public function _empty($name)
{
//把所有城市的操作解析到city方法
return $this->showCity($name);
}
//注意 showCity方法 本身是 protected 方法
protected function showCity($name)
{
//和$name這個城市相關的處理
return '當前城市' . $name;
}
}
空控制器
系統找不到指定的控制器名稱的時候,系統會嘗試定位空控制器(Error)。
譬如,當我們訪問不存在的index模組下的ppp控制器,系統將執行index模組下的Error控制器檔案。
相關文章
- Thinkphp5基礎——09 路由PHP路由
- Thinkphp5基礎——10 請求引數PHP
- Thinkphp5基礎——11 validate驗證PHP
- Thinkphp5基礎——06 模型(隱藏欄位)PHP模型
- Rails控制器及路由基礎AI路由
- jmeter基礎邏輯控制器之ForEach控制器JMeter
- Thinkphp5基礎——07 模型(模型關聯——查詢篇)PHP模型
- PLC(一)可程式設計控制器基礎程式設計
- vue 基礎入門筆記 08Vue筆記
- PHP基礎教程-08 整形變數PHP變數
- Python基礎(08):迭代器和解析Python
- Vue 框架-08-基礎實戰 demoVue框架
- Oracle基礎 08 使用者角色 user/roleOracle
- Java EE之旅08 資料庫基礎(2)Java資料庫
- python基礎 -08- 資料型別(set)Python資料型別
- 【學習】SQL基礎-008-集合運算子SQL
- Swift開發基礎08-高階函式Swift函式
- 『動善時』JMeter基礎 — 39、JMeter中如果(If)控制器詳解JMeter
- 星海留言本基於ThinkPHP5開發PHP
- 一個基於ThinkPHP5的CMS系統PHP
- 『動善時』JMeter基礎 — 40、JMeter中ForEach控制器詳解JMeter
- Analysis Services基礎知識——深入SQL Server 2008SQLServer
- Oracle分割槽表基礎運維-08Coalescing PartitionsOracle運維
- 傳智黑馬python基礎學習——day08Python
- Python基礎教程08 - 物件導向的基本概念Python物件
- Android開發基礎08-掌握kotlin語言AndroidKotlin
- K8S POD控制器:從基礎到高階實戰技巧K8S
- Oracle 19C Data Guard基礎運維-08 DML重定向Oracle運維
- Redis基礎系列-0x008:釋出訂閱模式Redis模式
- 08.程式程式設計基礎2~基本資料型別程式設計資料型別
- 基於thinkphp5框架開發的淘寶客網站PHP框架網站
- Oracle 19C OGG基礎運維-08Error code [942]Oracle運維Error
- Python 快速教程(基礎篇08): 物件導向的基本概念Python物件
- 強制刪除 Windows Server 2008 域控制器WindowsServer
- 【FPGA基礎】Latch基礎FPGA
- 後端_ThinkPHP5後端PHP
- vue 基礎入門筆記 08:鍵盤修飾符、自定義指令Vue筆記
- Go高效併發 08 | 併發基礎:Goroutines 和 Channels 的宣告與使用Go