Maison  >  Article  >  développement back-end  >  Explication détaillée du principe de filtrage des mots dans ucenter

Explication détaillée du principe de filtrage des mots dans ucenter

*文
*文original
2017-12-29 18:15:401607parcourir

Cet article présente principalement le principe du filtrage de mots dans ucenter et analyse les définitions de champs SQL associées et les fonctions de filtrage des mots dans ucenter sous forme d'exemples. Il implique le remplacement régulier de PHP et les compétences opérationnelles associées des chaînes et des tableaux. dans le besoin Vous pouvez vous y référer. J'espère que cela aide tout le monde.

Cet article analyse le principe de filtrage des mots dans ucenter. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

Filtrer la liste de mots :

id admin find replacement findpattern
1 UCenterAdminist 访问 /访问/is
2 UCenterAdminist 4655 45 /4655/is
3 UCenterAdminist fdsaf dfsa /fdsaf/is
4 UCenterAdminist 有机会 /有机会/is

Construire les données du cache :

//private
function _get_badwords() {
  $data = $this->db->fetch_all("SELECT * FROM ".UC_DBTABLEPRE."badwords");
  $return = array();
  if(is_array($data)) {
    foreach($data as $k => $v) {
      $return['findpattern'][$k] = $v['findpattern'];
      $return['replace'][$k] = $v['replacement'];
    }
  }
  return $return;
}

Méthode d'appel :

$_CACHE['badwords'] = $this->base->cache('badwords');
if($_CACHE['badwords']['findpattern']) {
  $subject = @preg_replace($_CACHE['badwords']['findpattern'], $_CACHE['badwords']['replace'], $subject);
  $message = @preg_replace($_CACHE['badwords']['findpattern'], $_CACHE['badwords']['replace'], $message);
}

Chaque paramètre de preg_replace() (sauf limit) peut être un tableau. Si le motif et le remplacement sont des tableaux, leurs clés seront traitées dans l'ordre dans lequel elles apparaissent dans le tableau. Ce n'est pas nécessairement le même que l'ordre numérique de l'indice. Si un index est utilisé pour identifier quel modèle doit être remplacé par quel remplacement, le tableau doit être trié avec ksort() avant d'appeler preg_replace().

Recommandations associées :

PHP génère du code Morse basé sur du texte

remplacement de texte php spécifié un nombre de fois

php gère les lignes répétées dans les documents texte

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

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