Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala pessoal,
Estou fazendo uma parada aqui com o smarty, mas estou com dificuldade quanto á incrementar um determinado contador, tipo quando eu faço o $counter++, ele incrementa, mas está printando na tela o valor, queria fazer isso sem mostrar. Olha como eu fiz, caso tenham um modo mais facil ou correto, favor me dar um toque, pois to começando agora a usar esse fw.
{assign var="counter" value="0"}
{foreach from=$laco item=foo}
{if $counter == "0"}
----------- comeco da ul aqui..<br>
{/if}
1.{$foo.nome}<br />
2.{$foo.email} - {$counter++}<br />
{if $counter == "3"}
------------ final ul aqui...<br />
{assign var="counter" value="0"}
{/if}
<br /><br /><br />
{/foreach}[]'s
Eu cheguei a dar uma olhada nessa função, mas com ela não consegui o que queria, vou dar um exemplo no php:
$nomes = array('João', 'Maria', 'Manoel', 'Roberta', 'Joana', 'Zé', 'Paty');
$c = 0;
$c_total = 0;
$total = count($nomes);
foreach ($nomes as $nome) {
$c++;
$c_total++;
if ($c == 1) {
echo '<div style="border:1px solid;margin:0 0 5px 0;">';
}
echo $nome.'<br />';
if ($c == 3 || $c_total == $total) {
echo '</div>';
$c = 0;
}
}
Com a função counter do smarty, quando vou verificar o valor dele, ele ja incrementa um número e não consigo zerar ele, como fiz no exemplo no final.
O Smarty possui o {counter}
Isso deve lhe ser útil.
http://www.smarty.net/manual/en/language.function.counter.php
Seção 7 deste post: http://rberaldo.blogspot.com/2009/05/recursos-interessantes-do-smarty.html