PHP高效的敏感词过滤方法

<?php
// 测试文件demo.php
$badword = array(
    ‘张三‘,‘张三丰‘,‘张三丰田‘
);
// array_combine() 函数通过合并两个数组来创建一个新数组,其中的一个数组是键名,另一个数组的值为键值。如果其中一个数组为空,或者两个数组的元素个数不同,则该函数返回 false。
// array_fill() 函数用给定的值填充数组,返回的数组有 number 个元素,值为 value。返回的数组使用数字索引,从 start 位置开始并递增。如果 number 为 0 或小于 0,就会出错。
$badword1 = array_combine($badword,array_fill(0,count($badword),‘*‘));

$bb = ‘我今天开着张三丰田上班‘;
$str = strtr($bb, $badword1);
echo $str;
// 测试结果: 我今天开着*上班
// 分析: strtr函数比str_replace和正则的效率高。
?>

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。