1.foreach標籤
foreach標籤用於循環輸出:
foreach(name,item,key)
name(必須):要輸出的資料模板變數
item(必須):循環單原變數
key(可選) :循環的key變數,預設值為key
範例:
{$vo.id}
{$vo.name}
foreach標籤相對於volist標籤簡潔,沒有volist標籤那麼多功能。優點是可以對物件進行遍歷輸出,而volist標籤通常是用於輸出陣列。
2.volist標籤
volist標籤主要用於在模板中循環輸出資料集或多維數組
volist(name,id,offset,length,key,mod,empty)
name(必須):要輸出的資料模型變數
id(必須):循環變數
offset(可選):要輸出資料的offset
length(可選):輸出資料的長度
key(可選):循環的key變數,預設值為i
mod (可選):對key值取模,預設為2(用於偶數行查詢等)
empty(可選):如果資料為空顯示的字串
通常模型的select方法傳回的結果是二維數組,可以直接使用volist標籤進行輸出。
在Action中先將範本賦值:
$user=M('User');
$list=$user->select();
$this->assign('list',$list);
$this ->display();
在範本定義如下,輸出編號與姓名
{$vo.id}
{$vo.name}
支援輸出部分資料,例如輸出其中的第5-15筆記錄:
{$vo.id}
{$ vo.name}
輸出偶數行記錄:
mod屬性也用來控制一定記錄的換行:
{$vo.name }
輸出循環變數:
{$k}.{$vo.name}
如果沒有指定key屬性的話,預設使用循環變數i,例如:
{$i}.{$vo.name}
如果要輸出數組的索引,可以直接使用key變量,和循環變量不同的是,這個key是由數據本身決定,而不是循環控制的,例如:
{$key}.{$vo.name}
volist用法和volist是一樣。
從2.1版開始允許使用函數設定資料集,如: