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判断ip黑名单程序代码实例
学校的新闻系统要求有些新闻只开放校内ip浏览,于是重写了一个代码来实现此功能,实现后的结果是,只要把允许访问的ip列入ip.txt这个文件中即可,同时支持c类ip,例如: ip.txt192.168211.67.188211.67.191.25代码如下: 复制代码 代码如下: /** ip地址黑名单.白名单* 判断访客地址的ip是否在ip.txt中,支持c类ip* By xhat*/ $ip = $_SERVER['REMOTE_ADDR'];$ipArray = preg_replace("#
-
php实现ip白名单黑名单功能
这个是一个检测ip是否非法的php函数,适应于白名单,黑名单功能开发,主要场景应用于:api来源限制,访问限制等. 复制代码 代码如下: /** * 安全IP检测,支持IP段检测 * @param string $ip 要检测的IP * @param string|array $ips 白名单IP或者黑名单IP * @return boolean true 在白名单或者黑名单中,否则不在 */ function is_safe_ip($ip="",$ips="&q
-
php过滤html中的其他网站链接的方法(域名白名单功能)
复制代码 代码如下: /** * 过滤外站链接 * @param array $local_domain 本站域名 数组 * @param string $message 文本内容 */ function replace_outer_links($local_domain_arr, $message) { $pattern= '/<[^>]*href=[\'\"]http[s]?:\/\/(?!' ; $i = 0 ;
-
PHP过滤黑名单关键字的方法
本文实例讲述了PHP过滤黑名单关键字的方法.分享给大家供大家参考.具体实现方法如下: 关键字过滤非常的简单把要过滤的内容存在数组或文档中,然后用户提交时我们进行preg_match或istrpos判断即可解决了,具体方法如下. 实例代码如下: 复制代码 代码如下: //过滤黑名单关键字函数 function check_($data){ $keywords = "你是大神吗|你好|去死"; if(preg_match("/$keywords/i",$data))
-
PHP屏蔽过滤指定关键字的方法
本文实例讲述了PHP屏蔽过滤指定关键字的方法.分享给大家供大家参考.具体分析如下: 实现思路: 一.把关键字专门写在一个文本文件里,每行一个,数量不限,有多少写多少. 二.PHP读取关键字文本,存入一个数组 三.遍历关键字数组,挨个用strpos函数去看看内容有没有关键字,如果有,返回true,没有则返回false PHP代码如下: 复制代码 代码如下: /* PHP中用strpos函数过滤关键字 */ // 关键字过滤函数 function keyWordCheck($content){ //
-
asp.net MVC利用自定义ModelBinder过滤关键字的方法(附demo源码下载)
本文实例讲述了MVC利用自定义ModelBinder过滤关键字的方法.分享给大家供大家参考,具体如下: 前面一篇主要讲解了如何利用ActionFilter过滤关键字,这篇主要讲解如何利用自己打造的ModelBinder来过滤关键字. 首先,我们还是利用上一篇<asp.net MVC利用ActionFilterAttribute过滤关键字的方法>中的实体类,但是我们需要加上DataType特性,以便于我们构造的ModelBinder通过DataTypeName识别出来: using System
-
asp.net MVC利用ActionFilterAttribute过滤关键字的方法
本文实例讲述了asp.net MVC利用ActionFilterAttribute过滤关键字的方法.分享给大家供大家参考,具体如下: 在开发过程中,有时候会对用户输入进行过滤,以便保证平台的安全性.屏蔽的方法有很多种,但是今天我说的这种主要是利用MVC中的ActionFilterAttribute属性来实现.由于MVC天然支持AOP,所以我们这种过滤方式正好利用了MVC的这种特性. 下面请看步骤: 首先,当用户输入自己的名称的时候,带有类似<BR>的内容的时候,由于MVC默认是需要验证内容的,
-
jQuery过滤HTML标签并高亮显示关键字的方法
本文实例讲述了jQuery过滤HTML标签并高亮显示关键字的方法.分享给大家供大家参考.具体如下: jQuery实现网页关键字过滤效果,将需要过滤的文字定义在JavaScript中,可定义多个,不过要修改JS代码为数组,这样可过滤出多个不同的关键字,本例只是为你演示一个基本的功能,更多过滤功能请自己挖掘吧. 运行效果如下图所示: 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http:
-
使用正则表达式屏蔽关键字的方法
[问题]关键字屏蔽是社交类软件必做的功能,当然了,一般来讲都是产品的中后期来做:不同产品规定不一样,跟着产品运营走,可以的 [方法]我们从技术的角度来看到这个问题,实现一个功能后者说实现一个需求,其方法是多种多样的,重点是找到适合我们当下产品的:比如:我们可以在后端进行数据处理之后,传递到前端:也可以在前端进行数据处理:这里我们要说的就是前端的JS处理方法,后端的php处理方法 [JS方法] // 进行屏蔽的文字 var str = '小丽.小明和小红是校长的学生:在这个小家庭里面,校长就是我们
-
C#实现过滤sql特殊字符的方法集合
本文实例讲述了C#实现过滤sql特殊字符的方法集合.分享给大家供大家参考,具体如下: 1. /// <summary> /// 过滤不安全的字符串 /// </summary> /// <param name="Str"></param> /// <returns></returns> public static string FilteSQLStr(string Str) { Str = Str.Replace(
-
Java中synchronized关键字修饰方法同步的用法详解
Java的最基本的同步方式,即使用synchronized关键字来控制一个方法的并发访问. 每一个用synchronized关键字声明的方法都是临界区.在Java中,同一个对象的临界区,在同一时间只有一个允许被访问. 静态方法则有不同的行为.用synchronized关键字声明的静态方法,同时只能够被一个执行线程访问,但是其他线程可以访问这个对象的非静态的synchronized方法.必须非常谨慎这一点,因为两个线程可以同时访问一个对象的两个不同的synchronized方法,即其中一个是静态s
-
PHP屏蔽关键字实现方法
本文介绍了PHP屏蔽关键字实现方法,一共有两种实现方式,具体如下: 第一种方法 思路 用正则去匹配关键字,把关键字用别的字符替换 $str = "/你大爷|你麻痹|什么玩意|SB|你他妈/"; // 关键字正则字符串 $string = "你他妈干什么玩意了 SB"; // 文本字符串 echo preg_replace($str, "*", $string); //preg_replace() 执行一个正则表达式的匹配和替换 OK 方法一结束
-
用C#中的params关键字实现方法形参个数可变
例如,下面代码: 复制代码 代码如下: class Program { static void Main(string[] args) { Console.WriteLine(Sum(1)); Console.WriteLine(Sum(1, 2, 3)); Console.WriteLine(Sum(1, 2, 3, 4, 5)); Console.ReadKey(); } private static int Sum(params int[] values) { int sum = 0; f
随机推荐
- vue 数组和对象不能直接赋值情况和解决方法(推荐)
- angularjs的select使用及默认选中设置
- iOS中的通知机制
- iOS二维码的生成和扫描
- JS或jQuery获取ASP.NET服务器控件ID的方法
- PHP批量上传图片的具体实现方法介绍.
- 对于Python的Django框架部署的一些建议
- python中利用await关键字如何等待Future对象完成详解
- C#添加Windows服务 定时任务
- 点图片上一页下一页翻页效果
- Powershell小技巧之通过EventLog查看近期电脑开机和关机时间
- boostrapTable的refresh和refreshOptions区别浅析
- javascript实现验证身份证号的有效性并提示
- react-router4 嵌套路由的使用方法
- Android进程通信之Messenger和AIDL使用详解
- 详解.NET 4.0中的泛型协变(covariant)和反变(contravariant)
- 结构体类型数据作为函数参数(三种方法)
- 数字金额千位分隔的Javascript
- Java设计模式之访问者模式使用场景及代码示例
- Python cookbook(数据结构与算法)通过公共键对字典列表排序算法示例