双引号中的变量嵌入

    Smarty可以识别嵌入在双引号中赋值变量,只要变量名只包含数字,字母,下划线和方括号[](参见命名)。如果有其它字符(如句点,对象引用等),变量必须由反引号对`backticks`包含。你不可以嵌入修饰符,它们必须永远在引号之外使用。

例子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(不是$foo.bar)
{func var="test `$foo.bar` test"} <-- 使用$foo.bar
{func var="test `$foo.bar` test"|escape} <-- 修饰符在引号外!

实际例子:
{include file="subdir/$tpl_name.tpl"} <-- 将以实际值替换$tpl_name
{cycle values="one,two,`$smarty.config.myval`"} <-- 必须有反引号!

    参见转义