情況如下:
為了方便統一公共型別模板變數的賦值
,我們一般會定義個基類,這個基類會渲染一些子類都會用到的模板變數。
如: 定義乙個前置方法,從session中取出uid,並查詢渲染到模板變數
<?php
use think\controller;
class userbase extends controller
$user=usermodel::get($uid);
if($user)
}protected function successjson($msg = '')
protected function errorjson($msg = '')
}
那如果子類控制器繼承後,想判斷父類渲染的模板變數,是否存在或者某個值是否為多少,怎麼判斷,查詢tp原始碼。可以找到
其實有方法可以獲取的
/**
* 取得模板顯示變數的值
* @access protected
* @param string $name 模板變數
* @return mixed
*/public function __get($name)
/*** 檢測模板變數是否設定
* @access public
* @param string $name 模板變數名
* @return bool
*/public function __isset($name)
如在子類控制器裡判斷模板變數是否存在
tp5 1 多級控制器
隨著系統的越來越複雜,你可能有這樣的需求 現在要做個api,分多版本。例如 v1 v2.希望目錄結構是這樣的 api controller v1 a控制器 v2 b控制器 這樣可以實現嗎,這樣是可以的。官方多級控制器解釋 如圖 那多級控制器如何訪問呢?官方解釋 route get blog id i...
tp5 1 資料庫獲取器
db類也可以支援獲取器定義,例如 db name user withattr name function value,data select 上面的 查詢的資料集資料中的name欄位的值會統一進行小寫轉換。withattr方法可以多次呼叫,對多個字段定義獲取器。支援對json欄位定義獲取器,例如 u...
TP6獲取控制器名,方法名
以下呼叫方法自選一種,哪種好玩你就用哪種。第一種 助手函式呼叫request controller 獲取控制器名 request action 獲取方法名第二種 門面函式facade的靜態呼叫 think facade request action think facade request cont...