Remplacer le contenu d'une variable présent dans une autre

roms
Invité n'ayant pas de compte PHPfrance

15 janv. 2010, 13:21

Bonjour,

j'ai deux variables. La première contient "** Téléviseurs + plats", la deuxième "** Téléviseurs + plats - Toutes nos offres"

Ceci n'est un exemple et les étoiles et plus sont là exprès.

J'aimerais transformer la deuxième variable pour obtenir juste " - Toutes nos offres"

Je n'ai pas trouvé de solution simple et les "*" et "+" me posent vraiment problème

Quelle est la solution la plus efficace pour ce faire ?

Merci d'avance pour votre aide,

Rom's

ViPHP
AB
ViPHP | 5818 Messages

15 janv. 2010, 13:33

Si il y a toujours un tiret ( - ) avant la dernière expression que tu dois garder, tu peux rechercher le dernier tiret avec strrpos()

Rom's
Invité n'ayant pas de compte PHPfrance

15 janv. 2010, 13:44

ce n'est pas toujours le cas malheureusement

ViPHP
AB
ViPHP | 5818 Messages

15 janv. 2010, 13:54

Ou tu cherches le dernier mot de ton expression "** Téléviseurs + plats" en faisant un explode de ta chaine de caractères sur un espace. Il suffit ensuite de faire un strrpos sur le dernier élément de ton tableau.

Sinon c'est que je n'ai pas assez d'explications pour comprendre ton pb. Donnes des exemples plus concrets :wink:

roms
Invité n'ayant pas de compte PHPfrance

15 janv. 2010, 14:48

Je cherche simplement à retirer le contenu de la première variable dans la seconde

très grossièrement, ce serait str_replace("** Téléviseurs + plats","","** Téléviseurs + plats - Toutes nos offres")

sauf que cela ne fonctionne pas..

Mammouth du PHP | 672 Messages

15 janv. 2010, 15:13

:?:
Je viens de tester le str_replace, et ça m'a l'air de bien fonctionner :
echo str_replace ("** Téléviseurs + plats", '', "** Téléviseurs + plats - Toutes nos offres");
Résultat => "- Toutes nos offres".

Qu'est-ce qui te fait dire que ça ne fonctionne pas ?