function text() { //變量輸出 $this->assign("text","Hello"); $attr=array("one"=>100,"two"=>200); $this->assign("shuzu",$attr); //使用運算符,註冊兩個變量 $this->assign("a",10); $this->assign("b",15); //三元運算符 $this->assign("pd",false); $this->display(); }
在Home/View/Main中新建一個文件text.htmlphp
<body> <h1>測試頁面</h1> 1.變量輸出 <div><{$text}></div> <!--取數組內容: --> <div><{$shuzu["one"]}></div> <div><{$shuzu.one}></div> 2.系統變量輸出 <div><{$Think.server.script_name}></div> 3.常量輸出 不帶雙下劃線的常量輸出(兩種方式均可): <div><{$Think.const.MODULE_NAME}></div> <div><{$Think.MODULE_NAME}></div> 帶雙下劃線的常量輸出: <div>__ROOT__</div> <div>__ACTION__</div> 4.配置輸出 <div><{$Think.config.db_charset}></div> 5.語言變量 <div><{$Think.lang.page_error}></div> 6.默認值輸出 <div><{$user.nickname|default="這傢伙很懶,什麼也沒留下"}></div> 7.使用運算符 <div>a*b=<{$a*$b}></div> <div>a+b=<{$a+$b}></div> <div>注意:在使用運算符的時候,再也不支持點語法和常規的函數用法</div> 8.三元運算符 <div><{$pd?"男":"女"}></div> <div>注意:三元運算符中暫時不支持點語法。</div> 9.包含文件 <include file="Main/Zi" />
運行結果:html
模板繼承是一項更加靈活的模板佈局方式,模板繼承不一樣於模板佈局,甚至來講,應該在模板佈局的上層。數組
模板繼承其實並不難理解,就比如類的繼承同樣,模板也能夠定義一個基礎模板(或者是佈局),而且其中定義相關的區塊(block),函數
而後繼承(extend)該基礎模板的子模板中就能夠對基礎模板中定義的區塊進行重載。佈局
所以,模板繼承的優點實際上是設計基礎模板中的區塊(block)和子模板中替換這些區塊。測試
每一個區塊由<block></block>
標籤組成。this
在Home/View/Main中新建文件 fu.html 和 zi.htmlspa
在Home/Controller/MainController.class.php中寫一個方法設計
function Zi() { $this->display(); }
fu.html :3d
<body> <block name="top"> <div>這是頭部內容</div> </block> <block name="zhong"> <div>這是主內容</div> </block> <block name="foot"> <div>這是頁腳</div> </block> </body> </html>
zi.html:
<extend name="fu" />
子模板徹底繼承父模版的內容:
若修改子模板:
<extend name="fu" /> <block name="zhong"> <div style="width:50%; height:50px; color:#00F">主內容</div> </block>
運行結果:
在condition屬性中能夠支持eq等判斷表達式,同上面的比較標籤,可是不支持帶有」>」、」<」等符號的用法,由於會混淆模板解析
注意條件的寫法(雙引號裏面),注意else後面有"/"
<if condition="$b == 10">
<div>10</div>
<else/>
<div>20</div>
</if>
foreach遍歷數組,name的值爲變量名(數組名),item的值爲循環數組的每一項的值
<foreach name="shuzu" item="v" >
<div><{$v}></div>
</foreach>
volist標籤一般用於查詢數據集(select方法)的結果輸出,一般模型的select方法返回的結果是一個二維數組,能夠直接使用volist標籤進行輸出。
<volist name="list" id="vo">
{$vo.id}:{$vo.name}<br/>
</volist>
開始值、結束值、步進值和循環變量均可以支持變量,開始值和結束值是必須,
其餘是可選。comparison 的默認值是lt;;name的默認值是i,步進值的默認值是1,
舉例以下:
使用方法以下:
範圍判斷標籤包括in notin between notbetween四個標籤,都用於判斷變量是否中某個範圍。
literal></literal>
標籤來防止模板標籤被解析模板支持註釋功能,該註釋文字在最終頁面不會顯示,僅供模板製做人員參考和識別。