PHP屏蔽关键字实现方法


Posted in PHP onNovember 17, 2016

本文介绍了PHP屏蔽关键字实现方法,一共有两种实现方式,具体如下:

第一种方法

思路 用正则去匹配关键字,把关键字用别的字符替换

$str = "/你大爷|你麻痹|什么玩意|SB|你他妈/";  // 关键字正则字符串  
 $string = "你他妈干什么玩意了 SB";    // 文本字符串 
 echo preg_replace($str, "*", $string);    //preg_replace() 执行一个正则表达式的匹配和替换

OK 方法一结束  挺简单把  大家在看的时候可以根据思路自己先去想

方法二

思路

1.把关键字放到一个txt文档中 要用一定的符合分隔开 ,用file_get_contents() 函数将关键字文档读入

2.用函数explode() 把字符串分割成数组  循环数组 strpos() 查找匹配关键字

代码

header('content-type:textml; charset=utf-8;'); 
function strPosFuck($content) 
{   
$fuck = file_get_contents('keyWords.txt');  // 读取关键字文本信息  
$content = trim($content);    $fuckArr = explode("\n",$fuck);  // 把关键字转换为数组  
for ($i=0; $i < count($fuckArr) ; $i++)   
{  
// $fuckArr[$i] = trim($fuckArr[$i]);  
if ($fuckArr[$i] == "") {     
continue;  //如果关键字为空就跳过本次循环   
# code...   
}    
if (strpos($content,trim($fuckArr[$i])) != false)    
  {    
  return $fuckArr[$i];  //如果匹配到关键字就返回关键字     
  # code...     
  }   
  }    return false;  // 如果没有匹配到关键字就返回 false 
  } 
  $content = "我今天你大爷碰到一个SB";  
  $key = strPosFuck($content); 
  if ($key) 
  {  
  echo "存在关键字".$key;  
  # code...  
  } 
  else  
  {   
  echo "OK"; 
  }

注意点   一定要去空  一定要去空 ,

strops() 函数返回值 要么是false 要么就是关键字的位置 判断的时候注意

成功后大家可以想想怎么把匹配到的关键字全部返回组成一个字符串或者数组

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
删除数组元素实用的PHP数组函数
Aug 18 PHP
PHP include_path设置技巧分享
Jul 03 PHP
PHP 查找字符串常用函数介绍
Jun 07 PHP
注册页面之前先验证用户名是否存在的php代码
Jul 14 PHP
20个2014年最优秀的PHP框架回顾
Oct 22 PHP
PHP中使用Imagick实现各种图片效果实例
Jan 21 PHP
php5.3后静态绑定用法详解
Nov 11 PHP
PHP实现对文件锁进行加锁、解锁操作的方法
Jul 04 PHP
PHP简单实现记录网站访问量功能示例
Jun 06 PHP
PHP实现数组转JSon和JSon转数组的方法示例
Jun 14 PHP
PHP PDOStatement::setAttribute讲解
Feb 01 PHP
在Laravel中使用MongoDB的方法示例
Nov 11 PHP
php实现背景图上添加圆形logo图标的方法
Nov 17 #PHP
PHP解压ZIP文件到指定文件夹的方法
Nov 17 #PHP
PHP版单点登陆实现方案的实例
Nov 17 #PHP
php实现URL加密解密的方法
Nov 17 #PHP
PHP读取zip文件的方法示例
Nov 17 #PHP
php安装php_rar扩展实现rar文件读取和解压的方法
Nov 17 #PHP
php arsort 数组降序排序详细介绍
Nov 17 #PHP
You might like
PHP安全编程之加密功能
2006/10/09 PHP
php中支持多种编码的中文字符串截取函数!
2007/03/20 PHP
对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
2014/07/04 PHP
php使用pdo连接报错Connection failed SQLSTATE的解决方法
2014/12/15 PHP
php实现粘贴截图并完成上传功能
2015/05/17 PHP
php入门教程之Zend Studio设置与开发实例
2016/09/09 PHP
Yii2框架操作数据库的方法分析【以mysql为例】
2019/05/27 PHP
jquery插件 cluetip 关键词注释
2010/01/12 Javascript
jQuery学习笔记 操作jQuery对象 CSS处理
2012/09/19 Javascript
jQuery避免$符和其他JS库冲突的方法对比
2014/02/20 Javascript
使用JS实现jQuery的addClass, removeClass, hasClass函数功能
2014/10/31 Javascript
jQuery实现平滑滚动的标签分栏切换效果
2015/08/28 Javascript
JS+CSS实现仿msn风格选项卡效果代码
2015/10/22 Javascript
基于Jquery和html5的7款个性化地图插件
2015/11/17 Javascript
Javascript将数值转换为金额格式(分隔千分位和自动增加小数点)
2016/06/22 Javascript
jquery mobile移动端幻灯片滑动切换效果
2020/04/15 Javascript
鼠标经过出现气泡框的简单实例
2017/03/17 Javascript
基于vue监听滚动事件实现锚点链接平滑滚动的方法
2018/01/17 Javascript
VUE2.0+ElementUI2.0表格el-table循环动态列渲染的写法详解
2018/11/30 Javascript
js实现删除li标签一行内容
2019/04/16 Javascript
解决前后端分离 vue+springboot 跨域 session+cookie失效问题
2019/05/13 Javascript
node基于async/await对mysql进行封装
2019/06/20 Javascript
JavaScript canvas绘制圆弧与圆形
2020/02/18 Javascript
浅谈vue中document.getElementById()拿到的是原值的问题
2020/07/26 Javascript
[01:43]深扒TI7聊天轮盘语音出处4
2017/05/11 DOTA
Python ValueError: invalid literal for int() with base 10 实用解决方法
2015/06/21 Python
python pandas 组内排序、单组排序、标号的实例
2018/04/12 Python
python 实现生成均匀分布的点
2019/12/05 Python
CSS实现fullpage.js全屏滚动效果的示例代码
2021/03/24 HTML / CSS
荷叶圆圆教学反思
2014/02/01 职场文书
数控专业自荐书范文
2014/03/16 职场文书
爱心捐助活动总结
2015/05/09 职场文书
详解mysql三值逻辑与NULL
2021/05/19 MySQL
Java tomcat手动配置servlet详解
2021/11/27 Java/Android
html5调用摄像头截图功能
2022/01/18 Javascript
vue实现在data里引入相对路径
2022/06/05 Vue.js