1. 程式人生 > >Thinkphp中,volist模板標籤的Mod屬性的使用方法

Thinkphp中,volist模板標籤的Mod屬性的使用方法

在thinkphp手冊中,關於volist模板標籤的Mod屬性的使用方法的內容如下:

輸出偶數記錄

{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}

在手冊的介紹中,關於mod方法的介紹不是很詳細, 在這篇文章(關於volist mod的使用

)的評論中,haran網友說:

mod是取模,意思是一個數除以另外一個數取餘數。

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

這裡的意思就是行數除以5,當餘數為4的時候輸出,比如第4、9、14、19行。

在這篇文章(thinkphp 的volist mod換行功能)中,博主說到“第二行的mod值,只要記住比上面的小1就行了。”

結合以上說法,我總結了一下: (1)mod確實是取模。 (2)value的值,是餘數。 (3)但是,值得注意的是,資料的volist輸出時,第一個資料是0,而不是1。

一個資訊列表輸出的程式碼例子:

    <ul>
<volist name="article" id="vo" empty="該分類下沒有資訊" mod="5">    
<li><a  href="/Home/article/detail/article_id/{$vo.article_id}.html" target="_blank">{$vo.title}</a><span class="fr">{$vo.publish_time|date='Y-m-d',###}</span></li>
<eq name=
"mod" value="4"></ul><div class="news_line"></div><ul></eq> </volist> </ul>

前臺頁面如下: 在這裡插入圖片描述

從這裡可以看出,第一條資訊的資料排序是0,若設定為每5條進行一次分隔,那麼就可以設定為資料序號除以5(mod=“5”),餘數為4(value=“4”)。

(4)餘數(value="")需要設定的值,通常是比除數(mod="")的值小1,也就是在這篇文章(thinkphp 的volist mod換行功能)中,博主說到“第二行的mod值,只要記住比上面的小1就行了。”