php的敏感词过滤类库,敏感词过滤的php类库

php的敏感词过滤类库,敏感词过滤的php类库敏感词过滤的php类库classLogic_BlackWord{constAPP_FORUM=1;constAPP_BLOG=2;constAPP_VOTE=3;publicfunctiongetHitList($txt){$hitList=array();$max=$this->getMax();if($max){$size=1000;$last=…

大家好,欢迎来到IT知识分享网。

敏感词过滤的php类库

class Logic_BlackWord

{

const APP_FORUM = 1;

const APP_BLOG  = 2;

const APP_VOTE  = 3;

public function getHitList($txt)

{

$hitList = array();

$max = $this->getMax();

if($max)

{

$size = 1000;

$last = ceil($max/$size);

for($page=1;$page<=$last;$page++)

{

$result = $this->getHitListByPage($txt,$page,$size);

if($result) $hitList = array_merge($hitList,$result);

}

}

$hitList2 = array();

foreach($hitList as $hit=>$type)

{

$hitList2[$type][] = $hit;

}

return $hitList2;

}

本类库的敏感词替换算法,效率比str_replace高4倍(附6仟个敏感词),这个类库是没有学习过Trie树的时候写的,之后我接触了AC算法,我的算法和AC是类似的结构和逻辑,都是利用树,空间换时间,对搜索/替换海量数据帮助很明显。

strtr是KMP算法的代表,在对待海量词汇上面,并无优势,并且每次都要加载词库到内存。

使用AC算法写成扩展,将词库加载内存中,是最好的处理方式。

所以badword.src.php可供学习AC算法、学习查找替换等。

申明:php中文网下载站匠心打造专业的IT资源下载站!一切资源免费,来源网络收集,请自行检测软件的完整性。交流QQ群:916808767

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/10939.html

(0)
上一篇 2024-03-26 10:45
下一篇 2024-03-28 10:45

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信