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基礎——11 validate驗證PHP
- Thinkphp5基礎——10 請求引數PHP
- Thinkphp5基礎——06 模型(隱藏欄位)PHP模型
- Python基礎(08):迭代器和解析Python
- vue 基礎入門筆記 08Vue筆記
- jmeter基礎邏輯控制器之ForEach控制器JMeter
- Vue 框架-08-基礎實戰 demoVue框架
- Thinkphp5基礎——07 模型(模型關聯——查詢篇)PHP模型
- python基礎 -08- 資料型別(set)Python資料型別
- Android開發基礎08-掌握kotlin語言AndroidKotlin
- Swift開發基礎08-高階函式Swift函式
- PLC(一)可程式設計控制器基礎程式設計
- 傳智黑馬python基礎學習——day08Python
- Oracle分割槽表基礎運維-08Coalescing PartitionsOracle運維
- python常識系列08-->logging模組基礎入門Python
- Oracle 19C Data Guard基礎運維-08 DML重定向Oracle運維
- Oracle 19C OGG基礎運維-08Error code [942]Oracle運維Error
- 2024-03-08 51微控制器開發筆記筆記
- 『動善時』JMeter基礎 — 39、JMeter中如果(If)控制器詳解JMeter
- 『動善時』JMeter基礎 — 40、JMeter中ForEach控制器詳解JMeter
- 2018-08-27列表和元祖基礎語法(day6)
- vue 基礎入門筆記 08:鍵盤修飾符、自定義指令Vue筆記
- Go高效併發 08 | 併發基礎:Goroutines 和 Channels 的宣告與使用Go
- 一個基於ThinkPHP5的CMS系統PHP
- Python入門教程100天:Day08-物件導向程式設計基礎Python物件程式設計
- SpringBoot2 基礎案例(08):整合Redis資料庫,實現快取管理Spring BootRedis資料庫快取
- K8S POD控制器:從基礎到高階實戰技巧K8S
- 【編測編學】零基礎學python_08_列表(排序+反轉+長度)Python排序
- 星海留言本基於ThinkPHP5開發PHP
- 零基礎創作專業wordpress網站08-製作關於頁面網站
- 【前端Vue】Vue從0基礎完整教程第2篇:day-08【附程式碼文件】前端Vue
- 基於FPGA 的SDRAM控制器FPGA
- 基於FPGA的VGA控制器FPGA
- BaseViewController(一個通用的帶導航欄的基礎控制器+封裝庫/類)ViewController封裝
- 基於thinkphp5框架開發的淘寶客網站PHP框架網站
- 【FPGA基礎】Latch基礎FPGA
- 08-08 題解