Maison  >  Article  >  développement back-end  >  PHP implémente le filtrage des mots sensibles dans les messages

PHP implémente le filtrage des mots sensibles dans les messages

巴扎黑
巴扎黑original
2017-03-22 14:29:013508parcourir

PHP implémente le filtrage des mots sensibles dans les messages

Un code

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>检测留言信息的敏感词</title>
</head>
<body>
<table width="761" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="#FEFEFE" bgcolor="#FFFFFF">
  <form action=""  method="post" name="form1" id="form1">
    <tr>
      <td width="761" align="center" bgcolor="#F9F8EF"><table width="749" border="0" align="center" cellpadding="0"  cellspacing="0"  style="BORDER-COLLAPSE: collapse">
        <tr>
          <td height="36" colspan="3" align="left" " bgcolor="#F9F8EF" >        姓  名:
            <input  name="user_name" id="user_name" value=" 匿名" maxlength="64" type="text" />
              <span 
            style="COLOR: #ff0000">*</span></td>
        </tr>
        <tr>
          <td height="36" colspan="3" align="left"  bgcolor="#F9F8EF">        标  题:
            <input maxlength="64" size="30" name="title"  type="text"/>
              <span style="COLOR: #ff0000">*</span></td>
        </tr>
        <tr>
          <td height="126" colspan="3" align="left"  bgcolor="#F9F8EF">        内  容:
            <textarea name="content" cols="60" rows="8" id="content" ></textarea>
              <span style="COLOR: #ff0000">*</span></td>
        </tr>
        <tr>
          <td height="40" colspan="3" align="center"  bgcolor="#F9F8EF"><input name="submit" type="submit" class="btn1" id="submit" value="签写留言"/>
  
<input name="reset" type="reset" class="btn1" value="清除留言" /></td>
        </tr>
      </table></td>
    </tr>
    <tr>
      <td width="761" align="center" bgcolor="#F9F8EF"><table width="749" border="0" align="center" cellpadding="0" cellspacing="0">
            <tr>
              <td width="703" height="31" align="center" > </td>
            </tr>
        </table></td>
    </tr>
  </form>
</table>
</body>
</html>
<?php
if($_POST){
if (is_file("./filterwords.txt")){//判断给定文件名是否为一个正常的文件
   $filter_word = file("./filterwords.txt");//把整个文件读入一个数组中
$str=$_POST[&#39;content&#39;];
for($i=0;$i<count($filter_word);$i++){//应用For循环语句对敏感词进行判断
  if(preg_match("/".trim($filter_word[$i])."/i",$str)){//应用正则表达式,判断传递的留言信息中是否含有敏感词
 echo "<script> alert(&#39;留言信息中包含敏感词!&#39;);history.back(-1);</script>";
 exit;
}
}
}
}
?>

Deux résultats en cours

PHP implémente le filtrage des mots sensibles dans les messages

Analyse de trois codes

Lorsqu'un utilisateur soumet un message, le programme utilisera la fonction d'expression régulière preg_mctch() pour comparer les informations du message avec les mots sensibles stockés dans le tableau afin de vérifier le message soumis par l'utilisateur. . Contient-il des mots sensibles ? Si le message contient des mots sensibles, un message d'invite apparaîtra, sinon les informations du message seront publiées avec succès.

Le "/i" dans la fonction preg_match() signifie que les lettres ne sont pas sensibles à la casse lors de la comparaison de mots sensibles.

Ce qui précède est le contenu de PHP filtrant les mots sensibles dans les messages. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !

Articles connexes :

Une méthode efficace de filtrage des mots sensibles (PHP)

Utilisation de l'extension PHP trie_filter pour filtrer les mots sensibles chinois

Le filtrage des mots sensibles PHP utilise l'extension tierce trie_filter

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn