18

strfilter

strfilter
SYNOPSIS

strfilter($s, $lang)

DESCRIPTION

strfilter retourne une chaîne de caractères avec les mots de la chaîne de caractères $s en minuscules, sans accents, sans les doublons et sans les mots non significatifs pour la langue $lang séparés par un espace.

Les mots non significatifs sont définis dans le fichier includes/stopwords.inc :

  1. includes
    1. stopwords.inc
  1. global $stopwords;
  2.  
  3. $stopwords = array(
  1.     'en' => array(
  2.         'a',
  3.         'about',
  4.         'above',
  1.     'fr' => array(
  2.         'a',
  3.         'au',
  4.         'aussi',

stopwords.inc définit la variable globale $stopwords. $stopwords contient un tableau qui associe pour chaque langue gérée par le programme une liste de mots qui ne sont pas significatifs dans un index.

CODE
  1. global $stopwords;
  2.  
  3. $stopwords = array();
  4.  
  5. @include 'stopwords.inc';

Charge la variable globale $stopwords à partir du fichier stopwords.inc.

  1. require_once 'strflat.php';
  2.  
  3. function strfilter($s, $lang) {
  4.     global $stopwords;
  5.  
  6.     if ($s) {
  7.         $wlist=array_map('strtolower', array_map('strflat', array_unique(preg_split('/\s+/', $s, -1, PREG_SPLIT_NO_EMPTY))));
  8.  
  9.         if ($lang && array_key_exists($lang, $stopwords)) {
  10.             $wlist=array_diff($wlist, $stopwords[$lang]);
  11.         }
  12.  
  13.         return implode(' ', $wlist);
  14.     }
  15.  
  16.     return false;
  17. }
VOIR AUSSI

translate

Commentaires

Votre commentaire :
[p] [b] [i] [u] [s] [quote] [pre] [br] [code] [url] [email] strip aide 2000

Entrez un maximum de 2000 caractères.
Améliorez la présentation de votre texte avec les balises de formatage suivantes :
[p]paragraphe[/p], [b]gras[/b], [i]italique[/i], [u]souligné[/u], [s]barré[/s], [quote]citation[/quote], [pre]tel quel[/pre], [br]à la ligne,
[url]http://www.izend.org[/url], [url=http://www.izend.org]site[/url], [email]izend@izend.org[/email], [email=izend@izend.org]izend[/email],
[code]commande[/code], [code=langage]code source en c, java, php, html, javascript, xml, css, sql, bash, dos, make, etc.[/code].