为了构建良好的网络环境以及为了大家健康的上网。。。。。。。。编不下去了
反正你知道敏感词过滤一定是要有的,如果没有这东西有关部门不找你喝茶哦!坏笑/坏笑
废话不多说指尖上干货
$fake = file_get_contents('CensorWords.txt'); // 读取关键字文本信息 这个文本就是敏感词的文本网上都有 最好选择最新最全的 $content = trim($content); //一定要去除左右空格 最好就是把所有特殊符号也去掉 $fuckArr = explode("\n",$fake); // 把关键字转换为数组 for ($i=0; $i < count($fuckArr) ; $i++){ // $fuckArr[$i] = trim($fuckArr[$i]); if ($fuckArr[$i] == "") { continue; //如果关键字为空就跳过本次循环 } if (strpos($content,trim($fuckArr[$i])) !== false){ return $fuckArr[$i]; //如果匹配到关键字就返回关键字 } } return false; // 如果没有匹配到关键字就返回 false
这样一个简单的敏感词过滤就有了
大家也可以通过DFA算法实现
DFA算法(全名:Deterministic Finite Automaton)即有穷自动机。其特征为:有一个有限状态集合和一些从一个状态通向另一个状态的边,每条边上标记有一个符号,其中一个状态是初态,某些状态是终态。但不同于不确定的有限自动机,DFA中不会有从同一状态出发的两条边标志有相同的符号。
简单讲解一下 比如:“坏蛋“是一个敏感词 首先判断“坏”其后跟的是“人”还是“蛋”如果是后者 那么这就是敏感词。
大家可以尝试一下