Page 1 sur 1

retirer les accents

Posté : 17 juin 2005, 15:47
par beve
bonjour

je cherche a remplacer tous les é et è par des e dans une variable qui contient du texte.
pareil pour à et a...
comment puis je faire ?

merci

Posté : 17 juin 2005, 15:50
par matteo17
pourkoi faire ?

Posté : 17 juin 2005, 15:51
par patbator
hello,

tu peux faire ça soit avec beaucoup de str_replace, soit en un seul preg_replace :)

le principe avec str_replace :
$chaine = str_replace(array('à', 'ä', 'â'), 'a', $chaine);

Posté : 17 juin 2005, 16:41
par Ripat
Le plus rapide:
$accents = 'áéíóúýÁÉÍÓÚÝàèìòùÀÈÌÒÙäëïöüÿÄËÏÖÜâêîôûÂÊÎÔÛåÅøØßçÇãñõÃÑÕ';
$sans =    'aeiouyAEIOUYaeiouAEIOUaeiouyAEIOUaeiouAEIOUaAoOscCanoANO';
$txt = strtr($txt, $accents, $sans);
Le plus élégant (auteur: Naholyr):
$txt_sans_accent = preg_replace('#&([a-z])(?:acute|grave|uml|circ|ring|slash|zlig|cedil|tilde);#i', '$1', htmlentities($txt)); 

Posté : 20 juin 2005, 00:01
par beve
merci bcp :wink: