smarty添加一个计数器并检查值并添加类

时间:2014-06-03 12:13:10

标签: php smarty prestashop

在smarty中我想设置一个计数器值并检查它的增量。在简单的PHP中,代码就像这样

$i = 0;
while ( $someValues ) :
$i++;
<div class="test ''.$class.">$number</div>
endwhile;

现在在php中我想添加这样的类

if($i==1) {
    $class= 'active';
  }
  else {
    $class= '';
  }

在smarty中,我已将数据库中的所有值分配给变量some​​Values。 所以在这里聪明的我会检查像

{foreach from=$someValues item=row}
<div class="test">$row.number</div>
{foreach}

这里给出了像这样的结果

<div class="test">1</div>
<div class="test">2</div>
<div class="test">3</div>
<div class="test">4</div>
<div class="test">5</div>

现在我想要相同类型的计数器并想要添加类。有人能告诉我怎么做吗? 我试过while循环检查,但它显示总页面空白。

1 个答案:

答案 0 :(得分:1)

中的1个索引
{$smarty.foreach.name.iteration}

如果要将类添加到foreach中的第一个div,可以使用

<div class="test{if $smarty.foreach.name.first} first{/if}">text</div>
or
<div class="test{if $smarty.foreach.name.index == 0} first{/if}">text</div>
or
<div class="test{if $smarty.foreach.name.iteration == 1} first{/if}">text</div>

编辑: 更多信息:http://www.smarty.net/docsv2/en/language.function.foreach.tpl