このマニュアルはSmartyのものです。セキュリティなどの問題でRCMSでは利用できないものもありますので、ご注意ください。
ダブルクォート内に埋め込まれた変数ダブルクォート内に埋め込まれた変数
Smarty が "ダブルクォート" で囲まれた内容の中から 割り当てられた
変数
として認識するのは、変数名が数字・文字・_(アンダースコア)・[](ブラケット)
のみで構成されているもののみです。詳細は
名前の付けかた
を参照ください。
その他の文字、たとえば .(ピリオド)や
$object>reference(オブジェクト参照)を含む場合は、
その変数を `バッククォート` で囲む必要があります。
修飾子 を埋め込むことはできず、
常にクォートの外で適用する必要があります。
例 3-5. 構文の例 {func var="test $foo test"} <-- $foo を参照します
{func var="test $foo_bar test"} <-- $foo_bar を参照します
{func var="test $foo[0] test"} <-- $foo[0] を参照します
{func var="test $foo[bar] test"} <-- $foo[bar] を参照します
{func var="test $foo.bar test"} <-- $foo (not $foo.bar) を参照します
{func var="test `$foo.bar` test"} <-- $foo.bar を参照します
{func var="test `$foo.bar` test"|escape} <-- 修飾子はクォートの外で! |
|
例 3-6. 実用例 {* $tpl_name を値で置き換えます *}
{include file="subdir/$tpl_name.tpl"}
{* $tpl_name を置き換えません *}
{include file='subdir/$tpl_name.tpl'} <--
{* . を含むのでバッククォートで囲む必要があります *}
{cycle values="one,two,`$smarty.config.myval`"}
{* php スクリプトでの $module['contact'].'.tpl' と同じです
{include file="`$module.contact`.tpl"}
{* php スクリプトでの $module[$view].'.tpl' と同じです
{include file="$module.$view.tpl"} |
|
escape
も参照してください。