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

 更新时间:2014年12月01日 11:41:20   投稿:shichen2014  
这篇文章主要介绍了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 "替换失败! ";
?>

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

相关文章

  • PHP 执行系统外部命令 system() exec() passthru()

    PHP 执行系统外部命令 system() exec() passthru()

    PHP作为一种服务器端的脚本语言,象编写简单,或者是复杂的动态网页这样的任务,它完全能够胜任。但事情不总是如此,有时为了实现某个功能,必须借助于操作系统的外部程序(或者称之为命令),这样可以做到事半功倍。
    2009-08-08
  • 详解PHP防止直接访问.php 文件的实现方法

    详解PHP防止直接访问.php 文件的实现方法

    这篇文章主要介绍了详解PHP防止直接访问.php 文件的实现方法的相关资料,这里提供实现禁止直接访问.php文件的实例,需要的朋友可以参考下
    2017-07-07
  • PHP中for与foreach的区别分析

    PHP中for与foreach的区别分析

    foreach 仅能用于数组,当试图将其用于其它数据类型或者一个未初始化的变量时会产生错误,在PHP5中也能遍历对象。
    2011-03-03
  • PHP中的自动加载操作实现方法详解

    PHP中的自动加载操作实现方法详解

    这篇文章主要介绍了PHP中的自动加载操作实现方法,结合实例形式详细分析了php自动加载的概念、原理、实现方法及相关操作注意事项,需要的朋友可以参考下
    2019-08-08
  • 数据库中排序的对比及使用条件详解

    数据库中排序的对比及使用条件详解

    PHP与MySQL数据库中排序的对比及使用条件是本文我们主要要介绍的内容,通常来说,执行效率需要考虑CPU、内存和硬盘等的负载情况
    2012-02-02
  • php微信开发接入

    php微信开发接入

    这篇文章主要为大家详细介绍了php微信开发接入,通过检验signature对请求进行校验,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • PHP6 mysql连接方式说明

    PHP6 mysql连接方式说明

    PHP5.3 alpha和PHP6 alpha中,均采用了mysqlnd做为mysql数据库的默认驱动.
    2009-02-02
  • PHP flush 函数使用注意事项

    PHP flush 函数使用注意事项

    ob_flush/flush在手册中的描述, 都是刷新输出缓冲区, 并且还需要配套使用, 所以会导致很多人迷惑…其实, 他们俩的操作对象不同, 有些情况下, flush根本不做什么事情
    2016-08-08
  • PHP使用PHPexcel导入导出数据的方法

    PHP使用PHPexcel导入导出数据的方法

    这篇文章主要介绍了PHP使用PHPexcel导入导出数据的方法,以实例形式较为详细的分析了PHP使用PHPexcel实现数据的导入与导出操作相关技巧,需要的朋友可以参考下
    2015-11-11
  • php下的权限算法的实现

    php下的权限算法的实现

    php下的权限算法的实现...
    2007-04-04

最新评论