Aller au contenu

fonction str_replace


Sujets conseillés

Posté (modifié)

Bonsoir le Hub,

je me pose une petite question...

est il possible de remplacer plusieurs caractere dans une seul fonction str_replace...

je m'explique

je voudrais, par exemple, remplcer le é per e, puis le è par e, puis le ê par e, etc...

merci

Modifié par gontran
Posté

Salut Gontran

essai ça:

function a_plu_accent($text)
{
$text=ereg_replace('é','e', $text);
$text=ereg_replace('è','e', $text);
$text=ereg_replace('ç','c', $text);
$text=ereg_replace('à','a', $text);
$text=ereg_replace('ê','e', $text);
$text=ereg_replace('î','i', $text);
$text=ereg_replace('ô','o', $text);
$text=ereg_replace('â','a', $text);
$text=ereg_replace('û','u', $text);
$text=ereg_replace('ù','u', $text);
return $text;
}

echo a_plu_accent($ton_texte);

Posté

Salut,

Tu peux voir ce que tu peux faire en lisant la partie du manuel php decrivant les possibilites de cette fonction : str_replace sur manuelphp.com

Tu peux faire ce que tu souhaites en placant des tableaux en parametres...

A+

Posté

Il vaut mieux utiliser strtr(), non ?

Comme ceci par exemple:

$url=strtr("$url", ",'âàäçéèêëîïôöùûü&?: ", "--aaaceeeeiioouuu...-");

Posté
Et pourquoi pas un simple
str_replace(array('é', 'è', 'ê'), 'e', $text);

?

Parce que dans ce cas tu ne traites que les é, è, ë, ë ... mais pas les autres caractères ;)

str_replace n'est pas fait pour cela, c'est strtr() qui est le plus souple à l'usage.

Posté

Salut,

"strtr" est le plus souple sans aucun doute... mais est il le plus efficace pour ce genre de substitution???

Posté

Facile à voir.

Tu fais une boucle qui s'exécute 1000 fois avec strtr() et 1000 fois avec une série de str_replace() pour chaque lettre...

En comparant les temps entre les deux exécutions, tu auras ta réponse ;)

Dan

Posté

merci pour toute vos reponse....

j'ai fais ceci et ca marche parfaitement

$accent= array("é", "è", "à", "ê");
$remplace= array("e", "e", "a", "e");
$visu= str_replace($accent, $remplace, $new_str);

Merci

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...