# {for} The `{for}{forelse}` tag is used to create simple loops. The following different formats are supported: - `{for $var=$start to $end}` simple loop with step size of 1. - `{for $var=$start to $end step $step}` loop with individual step size. `{forelse}` is executed when the loop is not iterated. ## Attributes | Attribute | Required | Description | |-----------|----------|--------------------------------| | max | No | Limit the number of iterations | ## Option Flags | Name | Description | |---------|--------------------------------------| | nocache | Disables caching of the `{for}` loop | ## Examples ```smarty ``` The above example will output: ```html ``` ```php assign('to',10); ``` ```smarty ``` The above example will output: ```html ``` ```php assign('start',10); $smarty->assign('to',5); ``` ```smarty ``` The above example will output: ``` no iteration ``` See also [`{foreach}`](./language-function-foreach.md), [`{section}`](./language-function-section.md) and [`{while}`](./language-function-while.md)