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


Posted in PHP onDecember 01, 2014

本文实例讲述了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 相关文章推荐
PHP5中的this,self和parent关键字详解教程
Mar 19 PHP
php 移除数组重复元素的一点说明
Nov 27 PHP
连接到txt文本的超链接,不直接打开而是点击后下载的处理方法
Jul 01 PHP
ThinkPHP控制器间实现相互调用的方法
Oct 31 PHP
浅析php创建者模式
Nov 25 PHP
php查找字符串出现次数的方法
Dec 01 PHP
PHP如何实现跨域
May 30 PHP
PHPCMS V9 添加二级导航的思路详解
Oct 20 PHP
Linux下快速搭建php开发环境
Mar 13 PHP
thinkPHP5.0框架引入Traits功能实例分析
Mar 18 PHP
golang实现php里的serialize()和unserialize()序列和反序列方法详解
Oct 30 PHP
php pdo连接数据库操作示例
Nov 18 PHP
php中print(),print_r(),echo()的区别详解
Dec 01 #PHP
PHP中__FILE__、dirname与basename用法实例分析
Dec 01 #PHP
php 删除cookie方法详解
Dec 01 #PHP
php生成html文件方法总结
Dec 01 #PHP
php中debug_backtrace、debug_print_backtrace和匿名函数用法实例
Dec 01 #PHP
php中随机函数mt_rand()与rand()性能对比分析
Dec 01 #PHP
THINKPHP项目开发中的日志记录实例分析
Dec 01 #PHP
You might like
php正则preg_replace_callback函数用法实例
2015/06/01 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
PHP $O00OO0=urldecode &amp; eval 解密,记一次商业源码的去后门
2020/09/13 PHP
jQuery的写法不同导致的兼容性问题的解决方法
2010/07/29 Javascript
dojo随手记 gird组件引用
2011/02/24 Javascript
js中document.getElementByid、document.all和document.layers区分介绍
2011/12/08 Javascript
js实时获取系统当前时间实例代码
2013/06/28 Javascript
Jquery的hide及toggle方法让超链接慢慢消失
2013/09/06 Javascript
JavaScript组合拼接字符串的效率对比测试
2014/11/06 Javascript
jQuery后代选择器用法实例
2014/12/23 Javascript
JavaScript中的值类型转换介绍
2014/12/31 Javascript
使用jquery+CSS实现控制打印样式
2014/12/31 Javascript
js原生实现FastClick事件的实例
2016/11/20 Javascript
概述如何实现一个简单的浏览器端js模块加载器
2016/12/07 Javascript
react-native-fs实现文件下载、文本存储的示例代码
2017/09/22 Javascript
JavaScript自执行函数和jQuery扩展方法详解
2017/10/27 jQuery
详解Vue单元测试case写法
2018/05/24 Javascript
JavaScript继承定义与用法实践分析
2018/05/28 Javascript
说说如何使用Vuex进行状态管理(小结)
2019/04/14 Javascript
Vue 中文本内容超出规定行数后展开收起的处理的实现方法
2019/04/28 Javascript
使用layer弹窗,制作编辑User信息页面的方法
2019/09/27 Javascript
浅谈如何优雅处理JavaScript异步错误
2019/11/12 Javascript
nuxt引入组件和公共样式的操作
2020/11/05 Javascript
在Python中使用元类的教程
2015/04/28 Python
python实现读取excel写入mysql的小工具详解
2017/11/20 Python
python zip()函数使用方法解析
2019/10/31 Python
Win10下安装并使用tensorflow-gpu1.8.0+python3.6全过程分析(显卡MX250+CUDA9.0+cudnn)
2020/02/17 Python
python3.6使用SMTP协议发送邮件
2020/05/20 Python
PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
2020/11/02 Python
几个SQL的面试题
2014/03/08 面试题
霸王洗发水广告词
2014/03/14 职场文书
先进党支部事迹材料
2014/12/24 职场文书
公务员年度考核个人总结
2015/02/12 职场文书
银行自荐信范文
2015/03/25 职场文书
终止解除劳动合同证明书
2015/06/17 职场文书
Go web入门Go pongo2模板引擎
2022/05/20 Golang