Skip to main content

for

for-Schleife

Eine for-Schleife kann angewendet werden, indem eine Zählervariable und ein Zahlenbereich definiert wird. Alternativ kann eine Iteration über ein Array vorgenommen werden.

Video-Tutorial

Zahlenbereich

Für diese Variante muss zuerst eine Zählervariable definiert werden (hier$_i) und dann ein Zahlenbereich (hier von 1 bis 10):

{% for $_i in 1..10 %}
	Hallo, ich bin Durchlauf $_i
{% endfor %}

Alternative

{%
	for($_i in 1..10)

	{
		print("Hallo, ich bin Durchlauf " .$_i);
	}

	# Ausgabe:
	# Hallo, ich bin Durchlauf 1
	# Hallo, ich bin Durchlauf 2
	# ...
	# Hallo, ich bin Durchlauf 10
%}

Diese Variante ist optimal, um beispielsweise Artikelbilder darzustellen. Artikelbilder werden in den entsprechenden Templates als Array zur Verfügung gestellt.

Wenn du bei einigen Artikeln mehrere Bilder angelegt hast, aber nicht mehr als fünf, ist die folgende Schleife eine interessante Möglichkeit zur Darstellung von Bildern:

{% for $_i in 1..5 %}
	{% if $ImageURL[$_i]!="" %}
		$Image[$_i]
	{% endif %}
{% endfor %}

Alternative

{%
	for($_i in 1..5)
	{
		if($ImageURL[$_i] != "")
		{
			print($Image[$_i]);
		}
	}
%}

Iteration über Array

Eine Iteration über ein Array ist auf zwei Arten möglich. Entweder wird nur der Wert der aktuellen Array-Position zurückgeliefert oder sowohl die Position als auch der Wert.

{% $_a = ["Hallo", "Du!", "Wie", "geht", "es", "dir?"] %}

{% for $_word in $_a %}
	$_word
{% endfor %}

Alternative

{%
	$_a = ["Hallo", "Du!", "Wie", "geht", "es", "dir?"];

		for($_word in $_a)
		{
			print($_word);
		}

	# Ausgabe: Hallo Du! Wie geht es dir?
%}

Wenn du auch die Position (hier$_key) erhalten möchten, verwende die folgende Schleifen-Variante:

Iteration über Array mit Schleife bei einzeiligem Code-Block

{% $_a = ["Hallo", "Du!", "Wie", "geht", "es", "dir?"] %}

{% for $_key, $_word in $_a %}
	Wort $_key: $_word
{% endfor %}

Alternative

{%
	for($_key, $_word in $_a)

	{
		print("Wort ");
		print($_key);
		print(": ");
		print($_word);
	}

	# Ausgabe:
	# Wort 1: Hallo Wort 2: Du! ...
%}

Verfügbare Template-Variablen

Innerhalb einer for-Schleife stehend die folgenden Template-Variablen zur Verfügung. Wenn mehrere Schleifen ineinander verschachtelt sind, erfolgt die Nummerierung von außen nach innen.

$LoopBreak[1]

$LoopContinue[1]

$LoopIsFirst[1]

$LoopIsLast[1]

$LoopCount[1]

$LoopPosition[1]

$LoopRevPosition[1]
Zum Seitenanfang