smarty模板中類似for迴圈功能的實現代碼

來源:互聯網
上載者:User
  1. {section name=total loop=100}
  2. {$smarty.section.total.index+1} //當前的索引
  3. {$smarty.section.total.iteration} //用於顯示迴圈的次數
  4. {/section}
複製代碼

還可以這樣:

  1. {assign var=i value=0}
  2. {section name=total loop=100}
  3. {assign var=i value=$i+1} {$i} //使用assign的方式賦值
  4. {/section}
複製代碼

輸出結果: 1 2 3 4 5 ... ... 100

另外,介紹下在smarty中使用php函數的方法。

在smarty模板中,如果使用php函數,只有一個參數的函數比如說去空白的trim可以這樣來寫:例1:

  1. <{$colname|trim}>
複製代碼

那如果使用像iconv這樣的有三個參數的函數該怎麼寫呢?如果寫成:例2:

  1. <{$colname|iconv:'utf-8':'gbk'}>
複製代碼

一執行就會發現顯示error資訊。起始在smarty模板頁的套用函數用法中,以例1來說,trim的前面$Row->colname其實就是trim的第一個參數,中間用|這個符號串接;那假設要使用像iconv有三個參數的函數的話,就要寫成:例3:

  1. <{'utf-8'|iconv:'gbk':$colname}>
複製代碼

即,函數第一個參數|函數:第二個參數:第三個參數。例3中會把colname的值從utf-8格式轉換成gbk。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.