Если вы просто хотите чередовать отображение на четные / нечетные в Smarty, что я предполагаю из оператора модуля '%' (хотя я не знаком с Perl):
{* Smarty template code *}
{foreach from=$myArray item=foo}
<tr class="{cycle values="row_even, row_odd"}"><td>{$foo}</td></tr>
{/foreach}
В качестве альтернативы, если вам действительно важно значение индекса переменной массива ...
{* Smarty template code *}
{foreach from=$myArray key=k item=v}
{if $k % 2}<li>odd</li>{else}even{/if}
{/foreach}