Smarty assign内で文字列連結
Smartyテンプレートでのassign内での文字の連結について
Smarty
{assign var=foo value='bar'}
{* $fooはbar *}
{* $strがbarの場合 *}
{assign var=foo value=$str}
{* $fooはbar *}
assign内で文字を連結するには、catを使用する方法と、`バッククォート`を使用する方法がある。
Smarty
{* $strはbarの場合 *}
{assign var=foo value=$str|cat:'baz'}
{assign var=foo value="`$str`baz"}
{* $fooはbarbaz *}
{* $str1がbar、$str2がbazの場合 *}
{assign var=foo value=$str1|cat:$str2}
{assign var=foo value="`$str1``$str2`"}
{* $fooはbarbaz *}
{* $str1がbar、$str2がbaz、$str3がquxの場合 *}
{assign var=foo value=$str1|cat:$str2|cat:$str3}
{assign var=foo value="`$str1``$str2``$str3`"}
{* $fooはbarbazqux *}
{* 計算 *}
{assign var=foo value="`$num1+$num2`"}
可変変数
Smarty
{* $fooがbarの場合、${$foo}と$barは同じ *}
{${$foo}}
{$bar}