我希望从另一个字符串中搜索并替换已知字符串。我应该使用str_replace()还是preg_replace()?要替换的字符串类似于[+qStr+]
,[+bqID+]
或[+aID+]
,它将在类似于此的代码块中搜索:
<li> [+qStr+]
<ol class="mcAlpha">
<li><input type="radio" name="[+bqID+]" id="[+bqID+]_[+aID+]" value="[+aID+]" /><label for="[+bqID+]_[+aID+]">[+aStr+]</label></li>
</ol>
</li>
我将使用MySQL查询的结果替换字符串,并且一次执行此操作或类似操作最多200次。哪个函数str_replace()或preg_replace()是最简单和/或最快的方法。
答案 0 :(得分:8)
如果您的字符串已修复,并且您不需要正则表达式,请始终使用str_replace,因为它会更快。另外请注意,您应该忘记ereg_replace,并始终使用preg_replace,因为前者已被弃用。
答案 1 :(得分:2)
如果您知道字符串并且不需要正则表达式,请使用str_replace()。它更快,因为如果你使用正则表达式就不需要尝试。
PS:对于正则表达式,你应该使用preg_replace()而不是ereg_replace(),只是为了将来......
答案 2 :(得分:0)
从PHP 5.3.0开始,不推荐使用ereg_replace(),因此我不建议使用它。
str_replace()或preg_replace()将是合乎逻辑的选择。 我个人使用str_replace()进行简单的搜索/替换; preg_replace用于比简单匹配更复杂的东西