中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ThinkPHP中模板引擎使用的示例分析

發布時間:2021-08-06 09:45:56 來源:億速云 閱讀:156 作者:小新 欄目:開發技術

這篇文章主要介紹了ThinkPHP中模板引擎使用的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

ThinkPHP 內置的模板引擎來定義模板文件,以及使用加載文件、模板布局和模板繼承等高級功能。

每個模板文件在執行過程中都會生成一個編譯后的緩存文件,其實就是一個可以運行的 PHP 文件。

PHP

/*index/controller/example.php*/
 
use think\Controller;
 
class test extends Index {
 
  public function template (){
    $name = 'Jerry';
    $allName = [
      0 => "Jerry", 
      1 => "Tom"
    ];
 
    $this->assign('nameA',$name);
    $this->assign('allName',$allName);
 
    return $this->fetch('example');
  }
}

 
HTML

/*index/view/example.html*/
 
<span>{$nameA}</span>
 
{volist name="allName" id="vo"}
 
  <p data-sub="{$key}" data-index="{$i}">{$vo}</p>
 
{/volist}
 
 
Result

<br /><span>Jerry</span>
 
<p data-sub="0" data-index="1">Jerry</p>
 
<p data-sub="1" data-index="2">Tom</p>

這樣 ThinkPHP 便完成了對頁面的解析工作,其中涉及到 模板實例化、定位、賦值、渲染及標簽的使用。

視圖實例化

暫無

模板賦值

顯然在在模板中直接使用 $name 是找不到該變量的。必須使用 assign 方法對模板賦值。在執行渲染輸出函數前, assign 方法使 函數內部變量與模板變量建立起映射關系。

$this->assign('name',$name);
$this->assign('allName',$allName);

通過賦值之后,便可以在模板文件中使用 {$nameA} 來輸出該變量了。

模板渲染

當數據已經準備好渲染到頁面上,還需要指定 html 文件作為渲染模板,為當前函數執行 fetch 方法時候傳入 example 參數。 

return $this->fetch('example');

模板標簽

在模板文件中使用內置標簽可以幫助我們在模板中循環、判斷變量。它以一對花括號 {tag} {/tag} 作為開標簽和閉標簽。 { 與 } 之間必須緊跟標簽屬性或值,存在 空格 和 換行 都不能在渲染時被解析。

volist 標簽就是內置標簽中的其中一個,通常用來循環某個數組變量。

{volist name="allName" id="vo"}
 
  <p data-sub="{$key}" data-index="{$i}">{$vo}</p>
 
{/volist}

allName 是通過模板賦值的變量 ,現在可以在模板上直接使用了,顯然它是一個數組, volist 標簽對它做了循環操作。

volist 標簽常用的一些屬性:

propnameid
key數組名當前元素
valueallNamevo

隱藏在 volist 中的有幾個內部變量 {$key} {$i} ,分別代表了 數組下標 和 循環次數 。

內置標簽

與 volist 一樣好用的內置標簽還有很多:

<notempty name=""></notempty> //判斷數據是否不為空 不為空則執行

感謝你能夠認真閱讀完這篇文章,希望小編分享的“ThinkPHP中模板引擎使用的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大化| 商南县| 叙永县| 赤峰市| 扎兰屯市| 德州市| 宝清县| 黔西县| 曲沃县| 万州区| 本溪| 泽州县| 上饶市| 华坪县| 黄大仙区| 榆林市| 蒙自县| 贵定县| 阳山县| 班玛县| 墨江| 长寿区| 蒙城县| 肇州县| 内丘县| 龙陵县| 武穴市| 台北市| 宜宾市| 万载县| 恭城| 潍坊市| 平山县| 广州市| 宽城| 孟州市| 大关县| 法库县| 浠水县| 资阳市| 筠连县|