我真的很喜欢smarty documentation,但有时很难找到容易的东西...所以继承我的问题。是否可以在条件中设置var?这是一个有很多欧元符号的大模板。 现在还有另一种新语言,但他们不支付欧元。所以不要为每个欧元符号周围的语言设定条件。我想使用一个var,它在模板的开头设置一次,语言条件如下:
{if $lang eq 'ch'}
{*need to set "CHF" as a smarty or php var*}
{else}
{*need to set "EURO" as a smarty or php var*}
{/if}
<div class="payment">{$price} {*CHF or EURO var*}</div>
答案 0 :(得分:5)
{if $lang eq 'ch'}
{assign var="currency" value="CHF"}
{else}
{assign var="currency" value="EURO"}
{/if}
<div class="payment">{$price} {$currency}</div>
答案 1 :(得分:2)
为什么不在代码中将模板设置在模板之外?
我认为这就是它所属的地方。模板应该控制演示;任何与逻辑有关的东西都属于驱动它的代码。
答案 2 :(得分:0)
{if $lang eq 'ch'}
<div class="payment">{$price} CHF</div>
{else}
<div class="payment">{$price} EURO</div>
{/if}
不需要变量吗?
答案 3 :(得分:0)
快捷方式:
{assign currency ($lang eq 'ch') ? 'CHF' : 'EURO'}