The {for}{forelse}
tag is used to create simple loops. The following different formarts 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 Name | Shorthand | Type | Required | Default | Description |
---|---|---|---|---|---|
max | n/a | integer | No | n/a | Limit the number of iterations |
Option Flags:
Name | Description |
---|---|
nocache | Disables caching of the {for} loop |
Example 7.27. A simple {for}
loop
<ul> {for $foo=1 to 3} <li>{$foo}</li> {/for} </ul>
The above example will output:
<ul> <li>1</li> <li>2</li> <li>3</li> </ul>
Example 7.28. Using the max
attribute
$smarty->assign('to',10);
<ul> {for $foo=3 to $to max=3} <li>{$foo}</li> {/for} </ul>
The above example will output:
<ul> <li>3</li> <li>4</li> <li>5</li> </ul>
Example 7.29. Excution of {forelse}
$smarty->assign('start',10); $smarty->assign('to',5);
<ul> {for $foo=$start to $to} <li>{$foo}</li> {forelse} no iteration {/for} </ul>
The above example will output:
no iteration