我目前正在研究一个系统会向多个人/机器发送消息。我不会通过相关部分详细介绍细节。
有许多细节需要发送,例如:
这些值是从数据库中提取的,但是,允许发件人格式化他喜欢的消息。例如,他可以这样做:
"Good day <employee name>, you'll earn <salary> on <date>
或
"Hello, your salary has been increased by <amount>.
Your current salary is: <salary>
其中来自数据库的值将在标签上被替换。做这些模板的最佳方法是什么?
答案 0 :(得分:1)
最好的方法是找到满足您需求的模板引擎,但据我所知,没有引擎使用您的变量表示法(< var >
),所以我认为您必须写自己的自行车。
此外,您可以将变量表示法更改为例如TWIG({{ var }}
)并将其用作现成的解决方案,但所有发件人都必须使用此表示法来编写邮件
答案 1 :(得分:0)
您可以使用str_replace
- 函数在字符串中进行简单替换:
$template = "Good day <employee name>, you'll earn <salary> on <date>";
$vars = array();
$vars[0] = '<employee name>';
$vars[1] = '<salary>';
$vars[2] = '<date>';
$values = array();
$values[0] = 'Peter Parker';
$values[1] = '450 €';
$values[2] = '01.01.2015';
str_replace( $vars, $values, $template );