Smarty カウンター変数は親ファイルで定義されていますが、増分されて子のインクルード ファイルで使用されます
P粉523335026
2023-09-01 19:10:23
<p>親 tpl ファイル (First.tpl) でカウンター変数を定義し、それを子のインクルード ファイル (Second.tpl) で増分して使用するのが好きです。 </p>
<p>しかし、カウンタは増分されなくなりました。 </p>
<p>First.tpl:</p>
<pre class="brush:php;toolbar:false;">{assign var = "counter" value = 1scope = "global"}
{foreach ...} //少なくとも 100 回繰り返します
{include file='Second.tpl'}
{/foreach}</pre>
<p>Second.tpl:</p>
<pre class="brush:php;toolbar:false;">{assign var="counter" value = $counter 1}
{$counter} //カウンターが増えない!
{if $counter > 10} do-something {/if} // if ステートメントは常に失敗します!</pre></p>
これは、同様のことを行うために使用するメソッドであり、ループ内で値をインクリメントし、その値をインクルードされたファイルに渡します。それを試してみてください:###
First.tpl リーリー
Second.tpl リーリー ######知らせ###。 -
$counterをゼロに初期化します。