[PHP] - fonction wordwrap

Résolu
ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   -  
ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'ai suivi les informations de https://www.php.net/wordwrap pour utiliser cette fonction. Mais quand je fait
<?php
$text = "Un mot très très loooooooooooooooooong.";
$newtext = wordwrap($text, 8, "\n", true);

echo "$newtext\n";
?>

Je n'ai pas de sauts de ligne comme indiqué. Cependant avec la balise HTML <br /> cela fonctionne. D'où vient ce problème ?
Merci pour votre aide !
A voir également:

3 réponses

Groarh Messages postés 682 Date d'inscription   Statut Membre Dernière intervention   185
 
Salut,
tu as bien le saut de ligne dans ton code source (du moins, j'imagine). Le problème vient du fait que tout type d'espace (tabulation, saut de ligne) dans le code HTML est transformé en espace simple à l'affichage.
Pour y remédier, plusieurs solutions :
- utliser une balise <pre> ;
- remplacer "\n" par "<br />" dans l'appel à wordwrap
- utiliser une fonction php de ton cru pour ajouter des <br /> à la fin de chaque ligne de ton texte.

Bon courage !
;)
0
ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   27
 
Ok !
Logiquement quand on écrit :
 echo "texte ici \n suite";
Il est censé sauté une ligne ?
0
Groarh Messages postés 682 Date d'inscription   Statut Membre Dernière intervention   185
 
Ben ouais, mais dans le code source seulement ! Lorsque le HTML est traité, le saut de ligne disparaît.
Sauf si tu l'as mis dans une balise <pre>, qui veut dire « texte préformaté », dans ce cas le navigateur ne touchera pas à la mise en forme.
Ou alors tu mets des <br />, à toi de voir en fonction de ce que tu juges le plus propre. Perso j'ai pas d'avis, je me sers jamais des coupures de mots …
0
ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   27
 
ok merci ! je n'avais pas comprit
0