Aller au contenu

str_replace avec condition


Francois0607

Sujets conseillés

Bonjour à tous,

je voudrais faire un str_replace mais avec une condition et j'ai un peu de mal...

voilà mon problème

si la chaîne est

mot1-mot2

alors remplacement de "-" par " " pour donner

mot1 mot2

maintenant si la chaîne est

mot1-mot2-mot3

alors remplacement du 2eme "-" par " " pour donner

mot1-mot2 mot3

Merci d'avance pour votre aide :)

Lien vers le commentaire
Partager sur d’autres sites

A supposer que ta chaine s'appelle $string,

tu peux essayer :

$temp = explode("-",$string);

$string = $temp[0].((!empty(@$temp[3]))?"-":" ").$temp[1].((!empty(@$temp[3]))?"-".@$temp[3]:"");

Voilà.

(non testé)

Lien vers le commentaire
Partager sur d’autres sites

Posté (modifié)

alors voilà le code

$temp = explode("-",$string);
$string = $temp[0].((!empty($temp[3]))?"-":" ").$temp[1].((!empty($temp[3]))?"-".$temp[3]:"");

Si ma chaine se compose de mot1 alors cela affiche bien "mot1" -->ok

Si ma chaine se compose de mot1-mot2 alors cela affiche bien "mot1 mot2" -->ok

Si ma chaine se compose de mot1-mot2-mot3 alors cela affiche "mot1 mot2" et pas "mot1-mot2 mot3" comme j'en ai besoin en fait...

Modifié par Francois0607
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

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



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