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 相关文章推荐
PHP数据库操作面向对象的优点
Oct 09 PHP
php注入实例
Oct 09 PHP
PHP分页显示制作详细讲解
Dec 05 PHP
PHP 配置open_basedir 让各虚拟站点独立运行
Nov 12 PHP
ThinkPHP3.1新特性之多层MVC的支持
Jun 19 PHP
discuz目录文件资料汇总
Dec 30 PHP
编写PHP脚本来实现WordPress中评论分页的功能
Dec 10 PHP
Zend Framework分页类用法详解
Mar 22 PHP
[原创]php实现 data url的图片生成与保存
Dec 04 PHP
mysqli扩展无法在PHP7下升级问题的解决
Sep 10 PHP
php解析非标准json、非规范json的方式实例
Dec 10 PHP
php的单例模式及应用场景详解
Feb 27 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
Terran历史背景
2020/03/14 星际争霸
IIS6的PHP最佳配置方法
2007/03/19 PHP
ThinkPHP Mobile使用方法简明教程
2014/06/18 PHP
php分页函数完整实例代码
2014/09/22 PHP
PHP的mysqli_query参数MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的区别
2014/09/29 PHP
JavaScript与HTML结合的基本使用方法整理
2015/10/12 PHP
Centos 6.5下PHP 5.3安装ffmpeg扩展的步骤详解
2017/03/02 PHP
JavaScript 学习笔记(十二) dom
2010/01/21 Javascript
JavaScript prototype属性使用说明
2010/05/13 Javascript
JQuery验证jsp页面属性是否为空(实例代码)
2013/11/08 Javascript
浅析js中的浮点型运算问题
2014/01/06 Javascript
ExtJS4利根据登录后不同的角色分配不同的树形菜单
2014/05/02 Javascript
js使用递归解析xml
2014/12/12 Javascript
JQuery boxy插件在IE中边角图片不显示问题的解决
2015/05/20 Javascript
jQuery中$.each()函数的用法引申实例
2016/05/12 Javascript
jQuery 3.0 的 setter和getter 模式详解
2016/07/11 Javascript
vue-cli+webpack记事本项目创建
2017/04/01 Javascript
ES6 Class中实现私有属性的一些方法总结
2019/07/08 Javascript
[02:47]DOTA2亚洲邀请赛 HR战队出场宣传片
2015/02/07 DOTA
讲解Python中的递归函数
2015/04/27 Python
python 网络爬虫初级实现代码
2016/02/27 Python
python使用numpy读取、保存txt数据的实例
2018/10/14 Python
Pandas的read_csv函数参数分析详解
2019/07/02 Python
pandas.DataFrame的pivot()和unstack()实现行转列
2019/07/06 Python
keras获得model中某一层的某一个Tensor的输出维度教程
2020/01/24 Python
浅谈matplotlib中FigureCanvasXAgg的用法
2020/06/16 Python
python开发一款翻译工具
2020/10/10 Python
HTML5实现视频弹幕功能
2019/08/09 HTML / CSS
雪花秀美国官方网站:韩国著名草本护肤化妆品品牌
2016/10/19 全球购物
北京捷通华声语音技术有限公司Java软件工程师笔试题
2012/04/10 面试题
2014教师研修学习体会
2014/07/08 职场文书
医疗专业毕业生求职信
2014/08/28 职场文书
领导干部遵守党的政治纪律情况思想汇报
2014/09/14 职场文书
tensorflow中的梯度求解及梯度裁剪操作
2021/05/26 Python
Anaconda配置各版本Pytorch的实现
2021/08/07 Python
Python os和os.path模块详情
2022/04/02 Python