Cycle ViewHelper <f:cycle>
This ViewHelper cycles through the specified values. This can be often used to specify CSS classes for example.
To achieve the "zebra class" effect in a loop you can also use the "iteration" argument of the for ViewHelper.
Examples
These examples could also be achieved using the "iteration" argument of the ForViewHelper.
Simple
<f:for each="{0:1, 1:2, 2:3, 3:4}" as="foo">
<f:cycle values="{0: 'foo', 1: 'bar', 2: 'baz'}" as="cycle">
{cycle}
</f:cycle>
</f:for>
Copied!
Output:
foobarbazfoo
Copied!
Alternating CSS class
<ul>
<f:for each="{0:1, 1:2, 2:3, 3:4}" as="foo">
<f:cycle values="{0: 'odd', 1: 'even'}" as="zebraClass">
<li class="{zebraClass}">{foo}</li>
</f:cycle>
</f:for>
</ul>
Copied!
Output:
<ul>
<li class="odd">1</li>
<li class="even">2</li>
<li class="odd">3</li>
<li class="even">4</li>
</ul>
Copied!
Source code
Go to the source code of this ViewHelper: CycleViewHelper.php (GitHub).
Arguments
The following arguments are available for the cycle ViewHelper:
as
-
- Type
- string
- Required
- 1
The name of the iteration variable
values
-
- Type
- array
The array or object implementing \ArrayAccess (for example \SplObjectStorage) to iterated over