Re : fonction minuscules

"Christophe" <ch.doiseau@ifrance.com> :

> existe t il un filtre minuscule ?

J'ai pas regardé pour la dernière version mais dans la précédente il n'y en a pas (c'est dommage d'ailleurs). Par contre il est facile d'en concocter un à partir de la fonction majuscule de SPIP mais en inversant les règles. Il suffit ensuite d'inclure cette fonction dans le fichier "mes_fonctions.php3" à mettre à la racine de SPIP. Voici la fonction que j'utilise pour un de mes sites (c'est une simple adaptation aux minuscules du filtre majuscule de SPIP, les lignes modifiées sont commentées) :
-----------------mes_fonctions.php3--------------------
<?php

// Un simple copier/coller de la fonction majuscules de ecrire/inc_texte.php3
// avec quelques modification.
function minuscules($texte) {
  $suite = htmlentities($texte);
  $suite = ereg_replace('&amp;', '&', $suite);
  $suite = ereg_replace('&lt;', '<', $suite);
  $suite = ereg_replace('&gt;', '>', $suite);
  $texte = '';
  if (ereg('^(.*)&([A-Za-z])([a-zA-Z]*);(.*)$', $suite, $regs)) {
    $texte .= minuscules($regs[1]); // minuscules au lieu de majuscules
    $suite = $regs[4];
    $carspe = $regs[2];
    $accent = $regs[3];
    if (ereg('^(acute|grave|circ|uml|cedil|slash|caron|ring|tilde|elig)$', $accent))
      $carspe = strtolower($carspe); // strtolower au lieu de strtoupper
    if ($accent == 'Elig') $accent = 'elig'; // inversion elig <-> Elig
    $texte .= '&'.$carspe.$accent.';';
  }
  $texte .= strtolower($suite); // strtolower au lieu de strtoupper
  return $texte;
}

?>
-----------------------------------------------------

L'avantage de cette fonction par rapport à un simple strtolower est qu'elle change aussi les lettres accentuées.

Joël Brogniart

Et si un rédacteur écrit en majuscule :
JUPPE DEPUTE
Tu minusculises comment ? <:-)))))))))))

____________________________________________

"Christophe" <ch.doiseau@ifrance.com> :

existe t il un filtre minuscule ?

At 20:48 27/02/2002 +0100, Joël Brogniart wrote:

Par contre il est facile d'en concocter un à partir de la fonction majuscule de SPIP mais en inversant les règles.

Salut,

On Thu, 28 Feb 2002, Perline wrote:

Et si un rédacteur écrit en majuscule :
JUPPE DEPUTE
Tu minusculises comment ? <:-)))))))))))

Comme cela:
juppe depute.

Et tu ne peux rien faire... Avec une correction au premier ordre (avec un
dico de francais) tu pourrais obtenir 'juppé député', mais c'ets au delà
de ce qu'un script php raisonable peut faire, et de toute façon tu
laisserais passer des ambiguité (dans les cas ou les deux mots avec
accents et sans accents sont dans le dico avec des sens différent, comme
'arrete' 'arreté'...

Je peux t'aider à écrire un script (hors ligne) pour remettre les accends
du dico et alerter en cas d'ambiguité, mais ca ne peut pas etre totalement
automatique ni en ligne...

  Yannick