我有这个文本块,应该可以自定义一些可以自定义的单词/关键字。让我们说这是下面的文本块。
亲爱的[姓名],Lorem ipsum dolor sit amet,consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna 在[日期]上的aliquam erat volutpat。 Ut wisi enim ad minim veniam,quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat。请联系[PhoneNumber]
方括号内的单词是应该可替换的关键字。替换它们的数据将来自db,这很好。我想知道的是,最好的方法是什么。我应该逐个搜索特定的关键字(还有更多的关键字,但是不能保证哪个关键字可以在哪个文本块中显示,所以我必须为每个文本块检查所有可能的关键字)然后使用str_replace
用适当的值替换它们?或者,有更好的方法吗?感谢。
答案 0 :(得分:5)
str_replace可以一步替换整个数组:
$map = array('[PhoneNumber]'=>'...', '[Date]'=>'...',...);
$result = str_replace(array_keys($map), array_values($map), $input);
答案 1 :(得分:0)
$admin_email_text = 'This is [first-field-label] the test, you can send the email at [form-email]';
$admin_email_text = str_replace("[form-email]", $biz_field_email, $admin_email_text);
$admin_email_text = str_replace("[first-field-label]", $biz_field_one, $admin_email_text);
print $admin_email_text;