前言
如果可以用第三方的话,那么你是幸运的,因为现在这种敏感词过滤,敏感图片,敏感语音过滤的第三方服务还是挺多的
敏感词过滤
核心代码
利用PHP内置的三个函数
array_combine() | array_fill() | strtr()
代码语言:javascript复制$replace =array_combine($item,array_fill(0,count($item),'*'));
$content = strtr($content,$replace);
array_combine
array_fill
strtr
完整代码
代码语言:javascript复制//过滤敏感词所有匹配的敏感词用一个*代替
$sensitives = Db::name('sensitive')->field('data')->cache(7200)->select();
$item = [];
foreach($sensitives as $k=>$v){
$item[$k] = $v['data'];
}
$replace =array_combine($item,array_fill(0,count($item),'*'));
$content = strtr($content,$replace);