Smartyの{section}

Smartyの{section}のloop属性に「数値」を渡すと、ループ回数を指定できます。

{section name=i loop=10}

または

{assign var=n value=10}
{section name=i loop=$n}

上の例は、次のようなPHPに相当します。

for ( $i = 0; $i < 10; ++$i ) {

Smartyマニュアルの例のように、loop属性に配列を渡すと、count(配列)をループ回数にします。

{section name=i loop=$arr}

上の例は、次のようなPHPに相当します。

$n = count($arr);
for ( $i = 0; $i < $n; ++$i ) {

やっと、Smartyマニュアルの次の説明の意味が解けて、すっきりしています。
「loop属性で指定されたループ変数(たいていは配列)は、セクションのループ回数を決定するためにのみ使用されます」