Home  >  Article  >  Backend Development  >  PHP keyword blocking method code example

PHP keyword blocking method code example

怪我咯
怪我咯Original
2017-07-14 14:19:593142browse

Nowadays, network information supervision is very strict, especially blocking keywords. Especially in the current WEB2.0 era, almost all website content comes from netizens and can be managed by webmasters. If you want others to prohibit publishing a certain keyword on your site, you need to do it in advance. There are various functional styles for keyword blocking using PHP. For example, regular expression is the most common one. I will not list them one by one here. This article introduces two implementation methods of keyword blocking

The first method

The idea is to use regular expressions to match keywords and replace the keywords with other characters

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

OK Once the method is over, it is quite simple. What you are watching Sometimes you can think about it first according to your ideas

Method 2

Ideas

1. Put the keywords in a txt The document must be separated by certain symbols. Use the file_get_contents() function to read the keyword document into

2. Use the function explode() to read the string Split into arrays Loop array strpos() to find matching keywords

Code

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"; 
  }

Notes Be sure to remove the empty space Be sure to remove the empty space,

strops () The return value of the function is either false or when judging the position of the keyword, please pay attention

After success, you can think about how to return all the matched keywords to form a string or array

The above is the detailed content of PHP keyword blocking method code example. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn