Problème titre en url

WRInaute occasionnel
Hello,
j'aimerais mettre le titre de ma page en url.

Je cherche une fonction qui permet d'enlever les espaces d'une chaine. je m'explique. On peut le faire avec un str_replace, si j'ai un seul espace à la fois.

par exemple : "bon jour" devient "bon-jour"

mais si j'ai : "bla bla bonjour : bonsoir blou blou" et que je veux "bla-bla-bonjour-bonsoir-blou-blou".

j'enlève d'abord le ":", ce qui donne "bla bla bonjour bonsoir blou blou", mais alors entre le bonjour et le bonsoir j'ai 2 espaces. donc avec un str_replace(" ", "-", $chaine" je me retrouve avec ça : bla-bal-bonjour--bonsoir-blou-blou.

ma question est donc, y a t'il un moyen de remplacer plusieurs espaces, que ce soit 2 ou plus par un seul, pour pouvoir ensuite mettre les tirets afin d'obtenir au final : "bla-bal-bonjour-bonsoir-blou-blou"

Merci d'avance
 
WRInaute occasionnel
Et pour ceux qui sont allergique aux expressions regulieres, il y a aussi :
Code:
while (strstr($chaine, '--')) 
  $chaine = str_replace('--', '-', $chaine);
J'ai remplacé les espaces par les tirets pour que ce soit plus visible.

Mais je suppose que les manières sité plus haut son plus performente.

-Magic-
 
Discussions similaires
Haut