我的数据库中存储了此文本:

Your email is: {$email} and your name is {$name}.

$text = get from db this field;

我从数据库里读到这个字段
我用smarty指定:
$smarty->assign('text', $text);
$smarty->assign($name, 'maria');
$smarty->assign($email, '[email protected]');

并在我的html页面中显示如下内容:
{$text}

结果是:
Your email is: {$email} and your name is {$name}.

我的问题是smarty不在变量中呈现变量。
有人能帮我吗?

最佳答案

你可以这么做

$smarty->assign('name', 'maria');
$smarty->assign('email', '[email protected]');
$smarty->assign('text',$smarty->fetch('string:'.$text));

查看http://www.smarty.net/docs/en/resources.string.tpl了解更多详细信息
编辑
如果您将模板存储在数据库中,我建议您阅读自定义模板资源http://www.smarty.net/docs/en/resources.custom.tpl

关于php - Smarty模板变量内部变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19835138/

10-11 07:01