效率对比(12688个字符,替换1次):
- str_replace: 0.109937906265秒
- strtr: 0.0306839942932秒
替换结果对比
时间对比:
- 比如:「张三」、「张三丰」、「张三丰田」 均为违禁词 (为何会有这样的区分?请参见 「法X」、「法Xgong」)
- 原文:「我今天开着张三丰田去上班 」
- strtr:「我今天开着****去上班 」(四个词均替换为了*)
- str_replace:「我今天开着**丰田去上班 」(仅仅替换了第一个匹配项)
时间对比:
关键词数量:6712 (无重复)
<?php $badword = array( '张三','张三丰','张三丰田'); ?>
测试文件demo.php
<?php
require('badword.php');
$badword1 =array_combine($badword,array_fill(0,count($badword),'*'));
$bb = '我今天开着张三丰田上班';
$str = strtr($bb,$badword1);
echo $str;
?>
测试结果:我今天开着*上班
分析:strtr函数比str_replace和正则的效率高。
本文通过对比str_replace与strtr函数在处理敏感词过滤任务时的性能表现,发现strtr函数在处理大量关键词的情况下效率更高。文章还展示了这两种方法在实际应用中的不同效果。
2458

被折叠的 条评论
为什么被折叠?



