PHP中实现模版内容参数替换功能

By | 2016年8月31日

比如在发送邮件功能中,会先定义好模版文件,里面部分内容,比如用户名,激活链接需要先用类似{name},{link}这样的参数内容标记。

然后就可以使用正则来替换这些参数内容:

public static function content_replace($data, $template) {

    foreach ($data as $key => $value) {
        $pattern[] = '/\{' . $key . '\}/';
        $replacement[] = $value;
    }

    return preg_replace($pattern, $replacement, $template);
}

其中$data参数是数组类型,按照模版中的参数定义:

$data = ['name'=>'liming','link'=>'http://lijialong.name'];

$template参数为原始模版文件内容。