Smarty удалить запятую в цикле foreach

У меня есть следующий цикл в Smarty:

{foreach from=$method.params key=name item=type}
<i style="font-weight: normal;">{$type}</i> {$name},
{/foreach}

Каков наилучший способ удалить запятую?

2

Решение

Я предпочитаю Twig, а не Smarty, поэтому я работаю с документами, но вот мой удар:

{assign var="comma" value=""}
{foreach from=$method.params key=name item=type}
{$comma}<i style="font-weight: normal;">{$type}</i> {$name}
{assign var="comma" value=", "}
{/foreach}
4

Другие решения

Вы можете сделать это также так:

{foreach from=$method.params key=name item=type name=myloop}
<i style="font-weight: normal;">{$type}</i> {$name}
{if not $smarty.foreach.myloop.last}, {/if}
{/foreach}

Вы также не упомянули, какую версию Smarty вы используете. Если вы используете Smarty 3 (который вы должны использовать, если это ваш выбор, вы должны использовать Smarty 3 foreach стиль а не Smarty 2 foreach style).

РЕДАКТИРОВАТЬ

Как вы уже упоминали, вы используете Smarty 3, вам лучше использовать Smarty 3 foreach Синтаксис таким образом:

{foreach $method.params as $name => $type}
<i style="font-weight: normal;">{$type}</i> {$name}
{if not $type@last}, {/if}
{/foreach}
3

По вопросам рекламы [email protected]