前言
又是深夜撸码,在写一个类似短信发送的平台,只不过我这个是邮箱发送的,程序里面可以让用户设置发送模板,需要用到变量替换模板这种方法,记录一下。
实现
<?php
/**
* @param string $content 模板内容
* @param array $param 变量数组
* @return string 最终模板
*/
function parseParam(string $content, array $param): string
{
$ret = [];
$leftDelimiter = '{';
$rightDelimiter = '}';
foreach ($param as $k => $v) {
$ret[$leftDelimiter . $k . $rightDelimiter] = $v;
}
$content = strtr($content, $ret);
return $content;
}
$content = '您的注册验证码:{code},如非本人操作,请忽略本邮件!';
$param = [
'code' => 666666
];
echo parseParam($content,$param );
?>
结果
您的注册验证码:666666,如非本人操作,请忽略本邮件!