程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> ThinkPHP模板輸出display用法分析

ThinkPHP模板輸出display用法分析

編輯:PHP綜合

本文實例分析了ThinkPHP模板輸出display用法。分享給大家供大家參考。具體分析如下:

模板變量賦值後就需要調用模板文件來輸出相關的變量,模板調用通過display方法來實現,我們在操作方法的最後使用:
復制代碼 代碼如下:$this->display();

就可以輸出模板,根據前面的模板定義規則,因為系統會按照默認規則自動定位模板文件,所以通常display方法無需帶任何參數即可輸出對應的模板,這是模板輸出的最簡單的用法。

事情總有特例,或者根本不需要按模塊進行分目錄存放,不過display方法總是能夠幫你解決問題。

Display方法提供了幾種規則讓你可以隨心所欲的輸出需要的模板,無論你的模板文件在什麼位置。

下面來看具體的用法:

一、調用當前模塊的其他操作模板

格式:display('操作名')

例如,假設當前操作是User模塊下面的read操作,我們需要調用User模塊的edit操作模版,使用:
復制代碼 代碼如下:$this->display('edit');

不需要寫模板文件的路徑和後綴。

二、調用其他模塊的操作模板

格式:display('模塊名:操作名')

例如,當前是User模塊,我們需要調用Member模塊的read操作模版 ,使用:
復制代碼 代碼如下:$this->display('Member:read');

這種方式也不需要寫模板文件的路徑和後綴,嚴格來說,這裡面的模塊名和操作名並不一定需要有對應的模塊或者操作,只是一個目錄名稱和文件名稱而已,例如,你的項目裡面可能根本沒有Public模塊,更沒有Public模塊的menu操作,但是一樣可以使用
復制代碼 代碼如下:$this->display('Public:menu');

輸出這個模板文件,理解了這個,模板輸出就清晰了.

三、調用其他主題的操作模板

格式:display('主題名:模塊名:操作名')

例如我們需要 調用Xp主題的User模塊的edit操作模版,使用:
復制代碼 代碼如下:$this->display('Xp:User:edit');

這種方式需要指定模塊和操作名

四、直接全路徑輸出模板

格式:display('模板文件名')

例如,我們直接輸出當前的Public目錄下面的menu.html模板文件,使用:
復制代碼 代碼如下:$this->display('./Public/menu.html');

這種方式需要指定模板路徑和後綴,這裡的Public目錄是位於當前項目入口文件位置下面,如果是其他的後綴文件,也支持直接輸出,例如:
復制代碼 代碼如下:$this->display('./Public/menu.tpl');

只要./Public/menu.tpl是一個實際存在的模板文件,如果使用的是相對路徑的話,要注意當前位置是相對於項目的入口文件,而不是模板目錄.

事實上,display方法還有其他的參數和用法。

有時候某個模板頁面我們需要輸出指定的編碼,而不是默認的編碼,可以使用:
復制代碼 代碼如下:$this->display('Member:read', 'gbk');

或者輸出的模板文件不是text/html格式的,而是XML格式的,可以用:
復制代碼 代碼如下:$this->display('Member:read', 'utf-8', 'text/xml');

如果你的網站輸出編碼不是默認的編碼,可以使用:
復制代碼 代碼如下:'DEFAULT_CHARSET'=> 'gbk'

如果要輸出XML格式的,可以用:
復制代碼 代碼如下:'TMPL_CONTENT_TYPE'=> 'text/xml'

如果不需要渲染模板文件而是直接輸出內容,可以使用show方法,例如:
復制代碼 代碼如下:$this->show($content, 'utf-8', 'text/xml');

希望本文所述對大家的ThinkPHP框架程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved