fonction de remplacement de caractères

Eléphant du PHP | 294 Messages

18 févr. 2009, 23:10

Bonjour
j'ai créé une fonction pour "traduire" des jours en français
$date=str_replace ("Monday","Lundi",$date);
le problème c'est que je traduit aussi les dates qui m'arrivent ainsi 2nd pour le 2

pour supprimer le "nd", j'ai ecrit ça
$date=str_replace ("nd","",$date);
mais le Lundi devient alors "lui"

je cherche donc une fonction qui ne remplace que la chaine de caractère precise "nd" ou" monday".
merci

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

19 févr. 2009, 11:28

Le problème c'est que la chaine de caractère precise "nd" est bien présente dans "Lundi" et "Monday" :)

Pourquoi ne pas tout simplement remplacer "1st" par "1", "2nd" par "2", etc. ? Cela limitera les risques d'interférer avec d'autres chaines :)

Sinon, il te faudra regarder du côté des expressions régulières pour faire un masque plus précis :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 294 Messages

19 févr. 2009, 12:10

Malin...:D
et en fait evident, j'ai honte de ne pas y avoir pensé :roll:

Merci