thinkPHP模板中的語法知識詳細介紹(十二)

傑克.陳發表於2015-06-23
原文:
thinkPHP 模板中的語法知識 詳細介紹(十二)

本章節:介紹模板中的語法,詳細的語法介紹


一、匯入CSS和JS檔案    ==>記住常量的是大寫

1、css link 、js  scr
<link rel=`stylesheet` type=`text/css` href=`__PUBLIC__/Css/test.css`/>
<script src=`__PUBLIC__/Js/test.js`></script>
2.import(==預設是在Public資料夾下)
//匯入Public資料夾下面的Js目錄中的test.js檔案,import標籤可以省略type屬性,預設就是js的
<import type=`js` file=`Js.test` /> 
<import type=`css` file=`Css.test` />

//可以更改預設資料夾 設定basepath屬性
//就會在 根目錄下找到 Other/Js/my.js,就不是預設的Public目錄
<import type=`js` file=`Js.my` basepath=`./Other`/>
3.load
//方法可以自動檢測匯入的檔案型別
<load href=`__PUBLIC__/Js/test.js` />
<load href=`__PUBLIC__/Css/test.css` />
二、分支結構
1、if
<if condition=`$sex eq “男”`>
男人哭吧哭吧不是罪!
<else />
做女人挺好的!
</if>

<if condition=`$age lt 18`>
未成年
<elseif  condition=`$age eq 18`/>
奮鬥吧少年!
<else />
成年
</if>
>  gt
<  lt
== eq
<= elt
>= egt
!= neq
=== heq
!== nheq

<switch name=`myAge`> //變數不要加 $  直接名字myAge 預設會加$
<case value=`1`>太小啦你</case>
<case value=`2`>你也太小</case>
<case value=`30`>你還差不多</case>
<default/> 這裡是預設值
</switch>
三、迴圈結構
1.for
<table border=`1` width=`500`>
  /*
   start(必須):迴圈變數開始值
    end(必須):迴圈變數結束值
    name(可選):迴圈變數名,預設值為i
    step(可選):步進值,預設值為1,自加!
    comparison(可選):判斷條件,預設為lt
  */
就是我們php for中的i
<for start=`0` end=`10` name=`j` step=`2`>
<tr><td>{$j}</td><td>abc</td></tr>
</for>
//倒序
<for start=`10` end=`00` name=`j` step=`-2` comparison=`gt`>
<tr><td>{$j}</td><td>abc</td></tr>
</for>
</table>

2.volist(陣列遍歷)
<volist name=`list` id=`v`>
{$v.username}<br/>
</volist>
//從下表=1的開始取2條
<volist name=`list` id=`v` offset=`1` length=`2`>
<{$v}><br>
</volist>
//遍歷多維陣列
<volist name=`arrd` id=`v`>
<{$v.id}>–<{$v.username}><br>
</volist>
3.foreach
<foreach name=`list` item=`v` key=`k`>
{$k}——-{$v}<br/>
</foreach>

四、特殊標籤(手冊也有詳細介紹哦)
1、比較標籤
eq或者 equal 等於 
模板中://等同於if else的使用  number傳的變數
<eq name=`number` value=`10`>
如果傳的name=10我就輸出這裡也!
<else/>
不等於10我就輸出這裡哦!
</eq>
neq 或者notequal 不等於 
gt 大於 
egt 大於等於 
lt 小於 
elt 小於等於 
heq 恆等於 
nheq 不恆等於 

2.範圍標籤(類似if else邏輯和書寫方式)
in      
<in name=`number` value=`9,10,11,12`>
在這些數字裡面
<else/>
不在這些數字的範圍內
</in>
<notin name=`number` value=`9,10,11,12`>
在這些數字裡面
<else/>
不在這些數字的範圍內
</notin>
between
//1-10之間
<notbetween name=`number` value=`1,10`>
{$number}在1-10之間
<else/>
{$number}不在1到10之間
</between>

notbetween–>標籤來判斷變數不在某個範圍內

<notbetween name=”id”value=”1,10″>輸出內容1</notbetween>

3.present
標籤來判斷模板變數是否已經賦值,
<present name=`m`>m有賦值<else/>m沒有賦值</present>
4.Empty
empty標籤判斷模板變數是否為空,
<empty name=`number`>number為空賦值<else/>number有值</empty>
5.Defined 
判斷常量是否已經定義
6.Define
在模板中定義常量
7.Assing
在模板中給變數賦值

五、其他標籤使用
1、*在模板中直接使用PHP程式碼
<php> echo “我是樂楊俊” </php>  //注意裡面只能寫php的程式碼,嵌入tp的標籤是不能用的
2、建議更改左右定界符
在配置檔案中改變
`TMPL_L_DELIM`=>`<{`, //修改左定界符
`TMPL_R_DELIM`=>`}>`, //修改右定界符

相關文章