retirer les accents

Eléphanteau du PHP | 44 Messages

17 juin 2005, 15:47

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

Eléphanteau du PHP | 23 Messages

17 juin 2005, 15:50

pourkoi faire ?

Eléphant du PHP | 52 Messages

17 juin 2005, 15:51

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);

ViPHP
ViPHP | 1380 Messages

17 juin 2005, 16:41

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)); 
ripat

Eléphanteau du PHP | 44 Messages

20 juin 2005, 00:01

merci bcp :wink: