我有一个名为Template
的表,我将其设置为通过邮件发送它们,我需要输入php变量。
我的问题是:从表格中检索后,我可以使用Smarty编辑我的邮件(它们是HTML代码)吗?
例如,我有:
$message = getMsgFromTable(Template);
$message
的Text类型包含php变量。我可以使用Smarty来填充这个变量吗?
$message = setVariableValueBySmarty($message);
答案 0 :(得分:7)
Smarty可以获取模板并返回其输出而不是显示它
fetch()
方法执行此操作,这就是您所需要的:
文档中还有一段告诉您如何使用它来发送邮件:)
如果您需要从数据库中创建模板(存储为字符串),请看一下:
答案 1 :(得分:1)
请参阅@ lorenzo-s和:
如果您的数据库存储模板包含<?php echo $foo; ?>
形式的“PHP变量”(或类似,无关紧要),您可能希望使用prefilter转换<?php echo $foo; ?>
到{$foo}
所以你可以使用Smarty的assign()方法用你的数据填充模板。