ThinkPHP框架檢視詳細介紹View檢視–模板(九)
ThinkPHP框架檢視詳細介紹 View 檢視–模板(九)
檢視也是ThinkPHP使用的核心部分:
一、模板的使用
a、規則
模板資料夾下[TPL]/[分組資料夾/][模板主題資料夾/]和模組名同名的資料夾[Index]/和方法名同名的檔案[index].html(.tpl)
–>更換模板檔案的字尾名(修改配置檔案)
`TMPL_TEMPLATE_SUFFIX`=>`.tpl`,//更改模板檔案字尾名,預設是html
b、修改模板檔案目錄層次
Tpl/Index/index.html ==> Tpl/Index_index.html (改成這種檔案目錄形式)
配置檔案:
`TMPL_FILE_DEPR`=>`_`,//修改模板檔案目錄層次
c、模板主題(就是網站的不同模板類似QQ裝扮皮膚)
–>TP預設是沒有主題的,現在模擬建立2個主題模板 my 和 your 資料夾
Home/Tpl/my/Index/index.html
Home/Tpl/your/Index/index.html
想用哪個模板主題,在配置檔案中換上對應值即可
`DEFAULT_THEME`=>`your`, //設定預設模板主題,訪問的時候就是your模板下的index
需要在TPL下面新建一個your資料夾作為模板主題資料夾
*如何動態修改模板主題?
1、在後臺準備一個功能,修改config.php檔案中的預設模板項
2、通過url傳遞 t=主題 引數可以修改不同的模板
`DEFAULT_THEME`=>`your`,//設定預設模板主題
`TMPL_DETECT_THEME`=>true,//自動偵測模板主題
`THEME_LIST`=>`your,my`,//支援的模板主題列表要先建立好 my 和 your模板
設定好後這麼訪問,後面直接帶個t引數 t/你的模板檔案:
http://localhost/thinkphp/index.php/Index/index.html/t/my
http://localhost/thinkphp/index.php/Index/index.html/t/your
二、輸出模板內容
a、display
1.display中沒有引數
$this->display();
2.可以帶引數
$this->display(本模組資料夾下的其他模板檔案);
$this->display(`index2`);
$this->display(其他資料夾下的模板檔案);
$this->display(`User:index`); //本模組呼叫User模組的index檔案
//注意,僅僅需要在Tpl下有Public資料夾以及其中的error.html即可
//不需要一定有Public模組–PublicAction.class.php
$this->display(`Public:error`);
$this->display(其他主題下的 資料夾下的 模板檔案);
//需要開啟主題支援,DEFAULT_THEME`=>`my`
$this->display(`my:Index:index`);
$this->display(一個url路徑);
$this->display(`./Public/error.html`); //public位置在網站根目錄下 /public/error.html
//幾乎不使用
$this->display(`./Public/error.html`,`utf-8`,`text/xml`); //模板 編碼 顯示方式(html或xml)
$content =`<b>這是show的使用直接傳html程式碼</b>`;//可能是資料庫啊直接拿到的輸出來
$this->show($content); == $this->show(`<b>這是show的使用直接傳html程式碼</b>`);
3.fetch方法
獲得模板檔案中的內容,以字串形式返回
$content=$this->fetch(`Public:error`);
4.show方法
不需要模板檔案,可以直接輸出模板內容
$content=$this->fetch(`Public:error`);
dump($content);
$content=str_replace(`h1`,`i`,$content);
$this->show($content);
三、模板中的賦值 :
//$this->assign(`name`,`樂楊俊`); 或
$this->name=`樂楊俊2`;
$this->display();
模板變數輸出:
一、變數輸出
1.標量輸出 –整型 浮點型 字元型、、、
2.陣列輸出
$arr = array(`k1`=>`leyangjun`,`k2`=>`leyangjun2`);
$this->assign(`name`,$arr);
$this->display();
模板輸出用:
{$name[1]} –索引陣列
{$name[`k2`]} –關聯陣列 或
{$name.k1}
3.物件輸出
{$name:k}
{$name->k}
二、系統變數(手冊詳細介紹)
//http://localhost/thinkphp/index.php/Index/add/name/leyangjun
{$Think.get.name} –url傳的name值,在模板中可以直接拿到輸出
{$Think.get.id}
三、使用函式(模板中對變數直接使用PHP函式)
{$name|strtoupper} 生成的編譯後檔案是 <?php echo (strtoupper($name)); ?> 在生成臨時檔案可見
{$name|date=`Y m d H:i:s`,###}
四、預設值
{$name|default=`這裡是預設值`}
五、運算子
+ – * / % ++ —
$this->assign(`name`,10);
{$name++} –11
相關文章
- 轉:物化檢視(Materialized View)介紹ZedView
- MySQL View(檢視)詳解MySqlView
- MySQL檢視介紹MySql
- ORACLE 檢視介紹Oracle
- win10任務檢視怎麼用 win10任務檢視功能詳細介紹Win10
- SAP ABAP CDS view 檢視的 Replacement 技術介紹View
- Oracle 物化檢視 詳細錯誤描述 檢視方法Oracle
- View Transform(檢視變換)詳解ViewORM
- MySQL View 檢視MySqlView
- thinkPHP模板中的語法知識詳細介紹(十二)PHP
- materialized view (物化檢視)ZedView
- 04-drf檢視層詳細
- nancy Unable to find view engine that could render the view 無法找到檢視模板引擎NaNView
- 在列印視窗,列印檢視View的子檢視結構圖View
- 檢視所有VIEW/TABLE in MSSQLViewSQL
- 檢視Spark任務的詳細資訊Spark
- Qt開發技術:圖形檢視框架(一)基本介紹QT框架
- 【Oracle】gv$px_session 檢視介紹OracleSession
- 【Oracle九大效能檢視】之6.v$process檢視Oracle
- Django的檢視和模板Django
- 微信小程式-檢視模板微信小程式
- drf : 通用檢視類和(GenericAPIView)5個檢視擴充套件類,九個檢視子類,檢視集。APIView套件
- Android檢視載入流程(6)之View的詳細繪製流程DrawAndroidView
- 建立物化檢視MV ( Materialized View )ZedView
- PostgreSQL如何檢視page、index的詳細資訊SQLIndex
- MySQL 檢視簡介MySql
- 簡介oracle檢視Oracle
- Spring 檢視和檢視解析器簡介Spring
- 實戰PyQt5: 082-圖形檢視(Graphics-View)框架簡介QTView框架
- 物化檢視詳解
- oracle檢視詳解Oracle
- tensorboard 視覺化的最詳細介紹ORB視覺化
- hive中的 lateral view(側檢視)HiveView
- android 動畫 ——檢視動畫(View Animation)Android動畫View
- 檢視合併(View Merging)View
- Dataguard (Standby) 相關的檢視(View)View
- 如何檢視字型詳細資訊,修改字型名稱?
- MySQL檢視版本號的五種方式介紹MySql