如何检查foreach的当前迭代并执行某些操作?如何检查smarty中的迭代?
{foreach $new_products as $product name=foo}
{if $smarty.foreach.foo.iteration=5}
Do it!
{/if}
{/foreach}
这总是返回未选中
如何检查foreach的当前迭代并执行某些操作?如何检查smarty中的迭代?
{foreach $new_products as $product name=foo}
{if $smarty.foreach.foo.iteration=5}
Do it!
{/if}
{/foreach}
这总是返回未选中
我认为你应该做{if $smarty.foreach.foo.iteration == 5}
(注意==
)。
有一个替代方案(我认为更新)。从Smarty docs的例子演示了好听:
{foreach $items as $i}
{if [email protected] eq 3}
{* put empty table row *}
<tr><td>nbsp;</td></tr>
{/if}
<tr><td>{$i.label}</td></tr>
{/foreach}
注意索引从零开始,所以索引3是第四次迭代。
对于Smarty的3,你可以使用@iteration财产
{foreach $new_products as $product}
{if [email protected] == 5}
Do it!
{/if}
{/foreach}
'{$的foreach从为$项目} {如果$ @项迭代== 5}'是有点短... – rodneyrehm 2012-03-05 08:59:29