我试图找出在PHP中对String执行多次替换的最佳方法,到目前为止,str_replace()似乎非常有用。
我用标志替换某些单词,以简化数据集中的俗语。
例如,[POSITIVE_ADJ]表示一个正面的形容词,并取代“伟大”这个词,我会这样做:
str_replace("great","[POSITIVE_ADJ]","Thank you for helping me, you're great at PHP!");
但是,如果我有一组多个正面形容词,请加载到数据结构中,如数组:
$positive_adj = array("good", "great", "wonderful", "excellent");
有没有更好的方法用标志替换主字符串中的任何$ positive_adj字符串,而不是循环它?有多个标志数组和更大的形容词组等。我想多个循环,只要它们各自的数组变得非常低效
非常感谢任何更有效的解决方案!
谢谢你, 约旦
答案 0 :(得分:4)
很好地解释了in the manual
但这是一个有效的例子
$positive_adj = ["good", "great", "wonderful", "excellent"];
str_replace($positive_adj,
"[POSITIVE_ADJ]",
"Its really good of you to help me, you are a great and wonderful person!"
);