<table summary="Header navigation table" width="100%" border="0" cellpadding="0" cellspacing="0"><tr><th colspan="3" align="center">Smarty - the compiling PHP template engine<br/> Smarty - php 模板編譯引擎 </th> </tr><tr><td width="25%" align="left" valign="bottom"><a href="language.custom.functions.html" accesskey="P">Prev</a></td> <td width="50%" align="center" valign="bottom">Chapter 8. Custom Functions[第八章.自定義函數]</td> <td width="25%" align="right" valign="bottom"><a href="language.function.cycle.html" accesskey="N">Next</a></td></tr></table>
# {counter}
{counter} is used to print out a count. {counter} will remember the count on each iteration. You can adjust the number, the interval and the direction of the count, as well as determine whether or not to print the value. You can run multiple counters concurrently by supplying a unique name for each one. If you do not supply a name, the name “default” will be used.
If you supply the assign attribute, the output of the {counter} function will be assigned to this template variable instead of being output to the template.
{counter}用于輸出一個記數過程。{counter}保存了每次記數時的當前記數值。用戶可以通過調節間隔(skip)和方向(direction)計算該值。也可以決定是否輸出該值。如果需要同時運行多個計數器,必須為它們指定不同的名稱。如果沒有指定名稱,模板引擎使用 "default" 作為缺省值。
如果指定了 "assign" 這個屬性,該計數器的輸出值將被賦給由*assign*指定的模板變量,而不是直接輸出。
| Attribute Name | Type | Required | Default | Description |
|-----|-----|-----|-----|-----|
| name | string | No | *default* | The name of the counter |
| start | number | No | *1* | The initial number to start counting from |
| skip | number | No | *1* | The interval to count by |
| direction | string | No | *up* | the direction to count (up/down) |
| print | boolean | No | *true* | Whether or not to print the value |
| assign | string | No | *n/a* | the template variable the output will be assigned to |
| 屬性 | 類型 | 是否必須 | 缺省值 | 描述 |
|-----|-----|-----|-----|-----|
| name | string | No | *default* | 計數器的名稱 |
| start | number | No | *1* | 記數器初始值 |
| skip | number | No | *1* | 記數器間隔、步長 |
| direction | string | No | *up* | 記數器方向,(增/減) |
| print | boolean | No | *true* | 是否輸出值 |
| assign | string | No | *n/a* | 輸出值將被賦給模板變量的名稱 |
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="EXAMPLE"><tr><td><div class="EXAMPLE"><a name="AEN81" id="AEN81"/> <b>Example 8-1. {counter}<br/> 例 8-1. counter 函數演示</b> <table border="0" bgcolor="#E0E0E0" width="100%"><tr><td><pre class="PROGRAMLISTING">{* initialize the count *}{counter start=0 skip=2}<br />{counter}<br />{counter}<br />{counter}<br /> this will output:0<br />2<br />4<br />6<br /></pre></td></tr></table></div></td></tr></table>
<table summary="Footer navigation table" width="100%" border="0" cellpadding="0" cellspacing="0"><tr><td width="33%" align="left" valign="top"><a href="language.custom.functions.html" accesskey="P">Prev</a></td><td width="34%" align="center" valign="top"><a href="index.html" accesskey="H">Home</a></td><td width="33%" align="right" valign="top"><a href="language.function.cycle.html" accesskey="N">Next</a></td></tr><tr><td width="33%" align="left" valign="top">Custom Functions<br/> 自定義函數</td><td width="34%" align="center" valign="top"><a href="language.custom.functions.html" accesskey="U">Up</a></td><td width="33%" align="right" valign="top">{cycle}</td></tr></table>
- Smarty模板編譯引擎
- 序
- 譯序
- I.開始
- 第一章. 什么是Smarty?
- 第二章. 安裝
- II.模板設計者篇
- 第三章.基本語法
- 注釋
- 變量
- 函數
- 屬性
- 雙引號里嵌入變量
- 數學運算
- 忽略Smarty解析
- 第四章.變量
- 從PHP分配的變量
- 從配置文件讀取的變量
- 變量范圍
- {$smarty}保留變量
- 第五章.變量調節器
- capitalize
- cat
- count_characters
- count_paragraphs
- count_sentences
- count_words
- date_format
- default
- escape
- indent
- lower
- nl2br
- regex_replace
- replace
- spacify
- string_format
- strip
- strip_tags
- truncate
- upper
- wordwrap
- 第六章.組合修改器
- 第七章.內置函數
- {$var=}
- {append}
- {assign}
- {block}
- {call}
- {capture}
- {config_load}
- {debug}
- {extends}
- {for}
- {foreach},{foreachelse}
- @index
- {function}
- {if},{elseif},{else}
- {include}
- {include_php}
- {insert}
- {ldelim},{rdelim}
- {literal}
- {nocache}
- {php}
- {section},{sectionelse}
- .index
- {while}
- 第八章.自定義函數
- {counter}
- {cycle}
- {eval}
- {fetch}
- {html_checkboxes}
- {html_image}
- {html_options}
- {html_radios}
- {html_select_date}
- {html_select_time}
- {html_table}
- {mailto}
- {math}
- {textformat}
- 第九章.配置文件
- 第十章.調試控制臺
- III.模板程序員篇
- 第十一章 常量
- SMARTY_DIR
- 第十二章 Smarty類變量
- $template_dir
- 第十三章.Smarty類方法
- append()
- appendByRef()
- assign()
- assignByRef()
- clearAllAssign()
- clearAllCache()
- clearAssign()
- clearCache()
- clearCompiledTpl()
- clearConfig()
- compileAllConfig()
- compileAllTemplates()
- configLoad()
- createData()
- createTemplate()
- disableSecurity()
- display()
- enableSecurity()
- fetch()
- getConfigVars()
- getRegisteredObject()
- getTags()
- getTemplateVars()
- isCached()
- loadFilter()
- registerFilter()
- registerPlugin()
- registerObject()
- registerResource()
- templateExists()
- unregisterFilter()
- unregisterPlugin()
- unregisterObject()
- unregisterResource()
- testInstall()
- 第十四章.緩存
- 建立緩存
- 多重緩存
- 緩存集合
- 控制插件輸出的可緩存性
- 第十五章.高級特性
- 安全
- 通過模板更改設置
- 模板繼承
- 數據流
- 對象
- 靜態類
- 預過濾器
- 后過濾器
- 輸出過濾器
- 緩存處理函數
- 資源
- 第十六章.以插件擴展Smarty
- 插件如何工作
- 命名約定
- 編寫插件
- 模板函數
- 調節器
- 塊函數
- 編譯函數
- 預濾器/后濾器
- 輸出過濾器
- 資源
- 插入
- Ⅳ.附錄
- 第十七章.疑難解答
- Smarty/PHP 錯誤
- 第十八章.使用技巧和經驗
- 空白變量處理
- 默認變量處理
- 傳遞變量標題給頭模板
- 日期
- WAP/WML
- 組件化模板
- 拒絕電子郵件地址
- 第十九章. 相關資源
- 第二十章. 漏洞
- 3.0安裝包
- 2.x版本升級至3.x版本的提示
- 3.0.x使用指南
- 翻譯人員列表