我正在使用Smarty for eMail-Templates,我希望将邮件主题放在一个带有正文模板的地方。
我的第一次尝试是用
设置主题{assign var="subject" value="mySubject"}
并使用
访问它$smart->getTamplateVars();
但是主题无处可寻。
我目前的工作解决方案是:
{php}
global $subject;
$subject = "My Subject";
{/php}
但使用SmartyBC和{php}感觉不对。
有没有更好的方法来实现这一目标?
答案 0 :(得分:2)
你不应该在Smarty中分配变量,然后通过PHP使用它。该方法是在控制器中分配变量,然后在视图中显示它。你应该真正了解MVC模式。此外,不使用全局变量,这是非常糟糕的解决方案。 {php}标签是非常可选的,不应滥用。
http://www.smarty.net/sampleapp1在此链接下,您会找到示例应用检查它,看看它应该是什么样子。