php过滤特殊字符实现黑名单关键字过滤功能

发布时间:2019-09-08编辑:脚本学堂
有关php过滤黑名单关键字的方法,php过滤特殊字符实现方法,正则匹配替换来实现过滤功能,需要的朋友参考下。

php过滤黑名单关键字的方法,通过保存过滤关键字到txt文件,再读取txt文件内容进行正则匹配替换来实现过滤功能。

php过滤黑名单关键字的方法

关键字过滤:
把要过滤的内容存在数组或文档中,用户提交时进行preg_match或istrpos判断即可解决。

例子:
 

复制代码 代码示例:
//过滤黑名单关键字函数
function check_($data){
 $keywords = "你是大神吗|你好|去死";
 if(preg_match("/$keywords/i",$data)){
  return;
 }else{
  return $data;
 }
}

关键字的存放形式为txt,txt文件中存放格式:|赌博机|卖血|出售肾|出售器官|眼角膜。

例子:
 

复制代码 代码示例:
<?php
function Filter_word( $str, $fileName )   
{   
if ( !($words = file_get_contents( $fileName )) ){   
  die('file read error!');   
}   
$str = strtolower($str);
//var_dump($words);
$word = preg_replace("/[1,2,3] | /i", '', $words);
//$wor = substr($word,0,-1);
//$w = preg_replace("|/|i", '/', $word);
//echo "<pre>";
//var_dump($w);
//$words = "aaa|bbb|ccc|ddd|eee";
    $matched = preg_replace('/'.$word.'/i', '***', $string);
return $matched;
}   
  
$content = "<a href='#'>我要aaafsdfbbb</a>";   
if ($result = Filter_word($content, './words.txt') ){
echo $result;
    echo "替换成功 ";   
}else{   
    echo "替换失败! ";
?>