美工统筹SEO,为企业电子商务营销助力!
PHP完成的敏感词过滤体例示例一佰互联网站扶植(www.taishanly.com) 宣布时候:2020-04-25 14:40:12 阅读数: 94 |
本文实例报告了PHP完成的敏感词过滤体例。分享给大师供大师参考,详细以下: 1、敏感词过滤体例 /** * @todo 敏感词过滤,前往成果 * @param array $list 界说敏感词一维数组 * @param string $string 要过滤的内容 * @return string $log 处置成果 */function sensitive($list, $string){ $count = 0; //违规词的个数 $sensitiveWord = ""; //违规词 $stringAfter = $string; //替代后的内容 $pattern = "/".implode("|",$list)."/i"; //界说正则抒发式 if(preg_match_all($pattern, $string, $matches)){ //婚配到了成果 $patternList = $matches[0]; //婚配到的数组 $count = count($patternList); $sensitiveWord = implode(",", $patternList); //敏感词数组转字符串 $replaceArray = array_combine($patternList,array_fill(0,count($patternList),"*")); //把婚配到的数组停止归并,替代利用 $stringAfter = strtr($string, $replaceArray); //成果替代 } $log = "原句为 [ {$string} ]<br/>"; if($count==0){ $log .= "暂未婚配到敏感词!"; }else{ $log .= "婚配到 [ {$count} ]个敏感词:[ {$sensitiveWord} ]<br/>". "替代后为:[ {$stringAfter} ]"; } return $log;} 2、挪用体例 function testAction(){ $string = "likeyou小白喜好小黑爱着的大黄"; //要过滤的内容 $list = ["小明", "小红", "明白", "小白", "小黑", "me", "you"]; //界说敏感词数组 $result = $this->sensitive($list, $string); echo ($result); die; //打印成果: /* 原句为 [ likeyou小白喜好小黑爱着的大黄 ] 婚配到 [ 3 ]个敏感词:[ you,小白,小黑 ] 替代后为:[ like**喜好*爱着的大黄 ] */} PS:这里再为大师供给2款很是便利的正则抒发式东西供大师参考利用: JavaScript正则抒发式在线测试东西:http://tools.jb51.net/regex/javascript 正则抒发式在线天生东西:http://tools.jb51.net/regex/create_reg 更多对于PHP相干内容感乐趣的读者可检查本站专题:《php正则抒发式用法总结》、《php法式设想宁静教程》、《php宁静过滤技能总结》、《PHP数组(Array)操纵技能大全》、《PHP根基语法入门教程》、《php字符串(string)用法总结》及《php+mysql数据库操纵入门教程》 但愿本文所述对大师PHP法式设想有所赞助。 |
TAG标签: PHP完成的敏感词过滤体例示例 |
上一篇:Yaf框架封装的MySQL数据库操纵示例 下一篇: 详解PHP 二维数组排序坚持键名稳定 |
[前往消息列表] |