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

yipeiwu_com6年前PHP代码库

本文实例讲述了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 "替换失败! ";
?>

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

php中取得URL的根域名的代码

复制代码 代码如下: <?php /** * 取得根域名 * * @author lonely * @create 2011-3-11 * @version 0.1 * @last...

PHP CLI模式下的多进程应用分析

PHP在很多时候不适合做常驻的SHELL进程, 他没有专门的gc例程, 也没有有效的内存管理途径. 所以如果用PHP做常驻SHELL, 你会经常被内存耗尽导致abort而unhappy....

PHP获取当前url的具体方法全面解析

我们今天向大家介绍的是有关PHP获取当前url的函数的具体方法,通过对这个函数方法的了解,进一步加深我们对PHP语言的认识,提高我们的学习水平。 PHP 5.0构造函数的实例讲解 PH...

php中将数组存到文件里的实现代码

第一次分享代码;(写得很烂..紧张纳紧张纳) php的数组十分强大,有些数据不存入数据库直接写到文件上,用的时候直接require。 (实际中有用到把数组存在到文件中的功能,不过分享的代...

php数组函数序列之in_array() 查找数组值是否存在

in_array() 定义和用法 in_array() 函数在数组中搜索给定的值。 语法 in_array(value,array,type) 参数 描述 value 必需。规定要在数组...