8768 sujets

Développement web côté serveur, CMS

Hello
j'essaye ceci
str_replace(CHR(13).CHR(10)," ",$texte)
pour remplacer les retours à la ligne par un espace :
text à 
remplacer

malheureusement mon résultat est :
text à  remplacer

deux espaces

EDIT, j'ai déjà essayer trim() ou rtrim()
Modifié par JENCAL (23 Nov 2015 - 16:54)
Bonjour,

et comme ça :

$txt = "text à
remplacer";

$to_squiz = "
";

$txt_new = str_replace("$to_squiz", " ", $txt);

echo $txt_new;
?
Modifié par loicbcn (23 Nov 2015 - 17:05)
Ok j'ai trouver mais je trouve ça n'importe quoi ^^

preg_replace("/\s+/", " ", str_replace(CHR(13).CHR(10)," ",trim(html_entity_decode($texte))))


$texte est mon texte. en faite, j'avais des "tabulations", des "retours à la ligne", des "balises  "
bref...
Mais s'il y a un espace avant le saut de ligne et que tu remplace le saut de ligne par un espace, ça doublera forcément l'espace. Ou alors j'ai manqué un truc.
Tu peux le faire aussi directement avec preg_replace

preg_replace("`\n|\s+`", " ", $texte)
à la base, y'a pas d'espace, mais Drupal, je sais pas ce qu'il fait, il rajoute une tonne de truc...
Modifié par JENCAL (24 Nov 2015 - 09:52)