74 public function render($each, $as, $key =
'', $reverse = FALSE, $iteration = NULL) {
87 if ($arguments[
'each'] === NULL) {
90 if (is_object($arguments[
'each']) && !$arguments[
'each'] instanceof \Traversable) {
91 throw new \TYPO3\CMS\Fluid\Core\ViewHelper\Exception(
'ForViewHelper only supports arrays and objects implementing \Traversable interface', 1248728393);
94 if ($arguments[
'reverse'] === TRUE) {
96 if (is_object($arguments[
'each'])) {
97 $arguments[
'each'] = iterator_to_array($arguments[
'each']);
99 $arguments[
'each'] = array_reverse($arguments[
'each']);
101 if ($arguments[
'iteration'] !== NULL) {
102 $iterationData = array(
105 'total' => count($arguments[
'each'])
110 foreach ($arguments[
'each'] as $keyValue => $singleElement) {
112 if ($arguments[
'key'] !==
'') {
115 if ($arguments[
'iteration'] !== NULL) {
116 $iterationData[
'isFirst'] = $iterationData[
'cycle'] === 1;
117 $iterationData[
'isLast'] = $iterationData[
'cycle'] === $iterationData[
'total'];
118 $iterationData[
'isEven'] = $iterationData[
'cycle'] % 2 === 0;
119 $iterationData[
'isOdd'] = !$iterationData[
'isEven'];
121 $iterationData[
'index']++;
122 $iterationData[
'cycle']++;
126 if ($arguments[
'key'] !==
'') {
129 if ($arguments[
'iteration'] !== NULL) {
$templateVariableContainer
static renderStatic(array $arguments, \Closure $renderChildrenClosure, \TYPO3\CMS\Fluid\Core\Rendering\RenderingContextInterface $renderingContext)
render($each, $as, $key='', $reverse=FALSE, $iteration=NULL)
buildRenderChildrenClosure()