Thinkphp中的volist標籤用法

來源:互聯網
上載者:User
這篇文章主要介紹了關於Thinkphp中的volist標籤用法,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

通常volist標籤多用於查詢資料集(select方法)的結果輸出,通常模型的select方法返回的結果是一個二維數組,對此可以直接使用volist標籤進行輸出。

在控制器中首先對模版賦值,如下例所示:

$User = M('User');$list = $User->limit(10)->select();$this->assign('list',$list);

在模版定義如下,迴圈輸出使用者的編號和姓名:

<volist name="list" id="vo">{$vo.id}:{$vo.name}<br/></volist>

Volist標籤的name屬性工作表示模板賦值的變數名稱,因此不可隨意在模板檔案中改變。id表示當前的迴圈變數,可以隨意指定,但需要確保不要和name屬性衝突,例如:

<volist name="list" id="data">{$data.id}:{$data.name}<br/></volist>

支援輸出查詢結果中的部分資料,例如輸出其中的第5~15條記錄:

<volist name="list" id="vo" offset="5" length='10'>{$vo.name}</volist>

輸出偶數記錄:

<volist name="list" id="vo" mod="2" ><eq name="mod" value="1">{$vo.name}</eq></volist>

Mod屬性還用於控制一定記錄的換行,例如:

<volist name="list" id="vo" mod="5" >{$vo.name}<eq name="mod" value="4"><br/></eq></volist>

為空白的時候輸出提示:

<volist name="list" id="vo" empty="暫時沒有資料" >{$vo.id}|{$vo.name}</volist>

empty屬性不支援直接傳入html文法,但可以支援變數輸出,例如:

$this->assign('empty','<span class="empty">沒有資料</span>');$this->assign('list',$list);

然後在模板中使用:

<volist name="list" id="vo" empty="$empty" >{$vo.id}|{$vo.name}</volist>

輸出迴圈變數:

<volist name="list" id="vo" key="k" >{$k}.{$vo.name}</volist>

如果沒有指定key屬性的話,預設使用迴圈變數i,例如:

<volist name="list" id="vo" >{$i}.{$vo.name}</volist>

如果要輸出數組的索引,可以直接使用key變數,和迴圈變數不同的是,這個key是由資料本身決定,而不是迴圈控制的,例如:

<volist name="list" id="vo" >{$key}.{$vo.name}</volist>

模板中可以直接使用函數設定資料集,而不需要在控制器中給模板變數賦值傳入資料集變數,如:

<volist name=":fun('arg')" id="vo">{$vo.name}</volist>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.