最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ThinkPHP 模板引擎使用詳解

 更新時(shí)間:2017年05月07日 15:04:01   作者:Mather  
thinkphp系統(tǒng)支持原生的PHP模板,而且本身內(nèi)置了一個(gè)基于XML的高效的編譯型模板引擎,系統(tǒng)默認(rèn)使用的模板引擎是內(nèi)置模板引擎,關(guān)于這個(gè)模板引擎的標(biāo)簽詳細(xì)使用可以參考模版引擎部分。

ThinkPHP 內(nèi)置的模板引擎來(lái)定義模板文件,以及使用加載文件、模板布局和模板繼承等高級(jí)功能。

每個(gè)模板文件在執(zhí)行過(guò)程中都會(huì)生成一個(gè)編譯后的緩存文件,其實(shí)就是一個(gè)可以運(yùn)行的 PHP 文件。

引用自 http://www.kancloud.cn/manual/thinkphp5/118122

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 便完成了對(duì)頁(yè)面的解析工作,其中涉及到 模板實(shí)例化、定位、賦值、渲染及標(biāo)簽的使用。

視圖實(shí)例化

暫無(wú)

模板賦值

顯然在在模板中直接使用 $name 是找不到該變量的。必須使用 assign 方法對(duì)模板賦值。在執(zhí)行渲染輸出函數(shù)前, assign 方法使 函數(shù)內(nèi)部變量與模板變量建立起映射關(guān)系。

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

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

模板渲染

當(dāng)數(shù)據(jù)已經(jīng)準(zhǔn)備好渲染到頁(yè)面上,還需要指定 html 文件作為渲染模板,為當(dāng)前函數(shù)執(zhí)行 fetch 方法時(shí)候傳入 example 參數(shù)。 

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

模板標(biāo)簽

在模板文件中使用內(nèi)置標(biāo)簽可以幫助我們?cè)谀0逯醒h(huán)、判斷變量。它以一對(duì)花括號(hào) {tag} {/tag} 作為開(kāi)標(biāo)簽和閉標(biāo)簽。 { 與 } 之間必須緊跟標(biāo)簽屬性或值,存在 空格 和 換行 都不能在渲染時(shí)被解析。

volist 標(biāo)簽就是內(nèi)置標(biāo)簽中的其中一個(gè),通常用來(lái)循環(huán)某個(gè)數(shù)組變量。

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

allName 是通過(guò)模板賦值的變量 ,現(xiàn)在可以在模板上直接使用了,顯然它是一個(gè)數(shù)組, volist 標(biāo)簽對(duì)它做了循環(huán)操作。

volist 標(biāo)簽常用的一些屬性:

prop name id
key 數(shù)組名 當(dāng)前元素
value allName vo

隱藏在 volist 中的有幾個(gè)內(nèi)部變量 {$key} {$i} ,分別代表了 數(shù)組下標(biāo) 和 循環(huán)次數(shù) 。

內(nèi)置標(biāo)簽

與 volist 一樣好用的內(nèi)置標(biāo)簽還有很多:

<notempty name=""></notempty> //判斷數(shù)據(jù)是否不為空 不為空則執(zhí)行

相關(guān)文章

最新評(píng)論

潜江市| 双辽市| 保亭| 汤原县| 延津县| 沽源县| 乐平市| 正安县| 古浪县| 高雄市| 广宁县| 邵阳县| 榕江县| 新河县| 黎平县| 什邡市| 互助| 道孚县| 湟中县| 尼勒克县| 淮阳县| 绥棱县| 高阳县| 黄陵县| 勐海县| 玉龙| 宜春市| 东宁县| 关岭| 原阳县| 安福县| 高阳县| 台北市| 绥芬河市| 若羌县| 曲松县| 宁乡县| 界首市| 沙雅县| 辰溪县| 秦皇岛市|