2016-07-06 18 views
0

Ich möchte Werte einer Variablen abhängig vom Wert eines Zählers innerhalb einer FOR EACH-Schleife zuweisen. Also wenn Zähler = 1, dann gebe ich den Wert 'a', aber wenn der Zähler nicht 1 ist, dann gebe ich den Wert 'b'.Counter in smarty

Dies ist, wie weit ich gekommen, aber mein Code bricht einmal füge ich die Bedingungen und den Zähler ändern ...

[{foreach from=$orderArticles item="currOrderArticle"}] 
    [{if $counter == 1}] 
     products_info.push(["transaction_id='a'"]); 
     [{assign var="counter" value=2}] 
    [{else}] 
     products_info.push(["transaction_id='b'"]); 
    [{/if}] 
[{/foreach}] 

Antwort

0

Smarty hat bereits ein Wiederholungszähler für foreach

[{foreach $orderArticles as $currOrderArticle}] 
    [{if [email protected] == 1}] 
    ... do something ... 
    [{else}] 
    ... do something else ... 
    [{/if}] 
[{/foreach}] 
Schlaufen

Lesen Sie mehr darüber in der Smarty documentation for foreach