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程序设计有所帮助。

(0)

相关推荐

  • 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

随机推荐