用另一个字符替换html中的特殊字符不起作用
问题描述:
嗨我有一个模板:从数据库中获取我需要将它作为电子邮件发送给客户。所以我想用{{}}替换[[]],这样分枝可以很容易地用值替换实际变量。用另一个字符替换html中的特殊字符不起作用
<p>Dear [[LOCATION_OWNER]],</p>\n
\n
<p><br />\n
We are exited [[LOCATION]]</p>\n
\n
<p>It is very early stages at the moment, and it may not get picked fromour selection, but we wanted to let you know.</p>\n
\n
<p>Here my contents</p>\n
\n
<p>Best wishes,</p>\n
\n
<p>[[CUSTOMER]]</p>
我想这以下几个方面:
$patterns = array();
$patterns[0] = '/[[]]/';
$replacements = array();
$replacements[0] = '{{}}';
$output = preg_replace($patterns, $replacements, $getTemplates->getEmailTemplate());
,但它不是与替代[[]] {{}}。我在这里错过的请帮忙。我使用树枝作为模板
感谢
答
这是一个不完美的方法,但它很简单,在大多数情况下是合适的:
$regex = '/(\[\[)(.+?)(\]\])/';
$text = '[[xxx]] [[yyy]] [[zzz]]';
echo preg_replace($reg, '{{$2}}', $str); // {{xxx}} {{yyy}} {{zzz}}
但是,如果模板不使用嫩枝语法,可能会适应枝条?您可以使用change标签变量分隔符。关于Symfony环境,另请参阅detailed example。