在preg_replace中使用变量

时间:2013-06-27 13:28:37

标签: php regex preg-replace

我在$ subject变量中有以下字符串

<p>{{headline}}</p>

我有一个变量$headline="Hello World"

正如您所想,我想使用preg-replace替换{{headline}} Hello World

方法必须是动态的,因为它只是headline的一个例子。

1 个答案:

答案 0 :(得分:4)

$vars = array(
    'headline' => 'foo'
);

echo preg_replace_callback('/\{\{(\w+)\}\}/', function (array $m) use ($vars) {
    return $vars[$m[1]];
}, '<p>{{headline}}</p>');

您可能真的想要查看具有类似语法但基于正确解析器的现有模板系统,例如http://twig.sensiolabs.orgMustache基本上也已经做了同样的事情。