Page 1 sur 1

est ce que la fonction nl2br

Posté : 26 avr. 2007, 14:15
par coxine
permet aussi de conserver les "espaces"
J'ai un cas qui se pose :
la base est enrichie à l'aide d'un fichier excel importé en CSV.
Pour conserver les sauts de lignes, j'utilise la fonction
<? print nl2br($row_sql['texte']);?>
Mais je me rends compte qu'une mise en forme :

Code : Tout sélectionner

Titre - item1 - item2
N'est pas conservée et ça donne ça :

Code : Tout sélectionner

Titre - item1 - item2
Comment considérer les espaces ????
J'ai l'impression que ça fait un trim aussi
Merci de votre aide !
:D

Posté : 26 avr. 2007, 14:27
par sadeq
nl2br() ne fait que transformer les \n (retour chariot en texte) en <br> (balise de retour à la ligne en html) elle ne modifie pas autres choses.

Quant à l'exemple que tu as donné, concerne les tabulations de item1 et item2 et ça n'a rien avoir avec nl2br.

si tu veux afficher le format d'origine du texte, tu dois utiliser la balise <pre> </pre> et non nl2br()

Exemple:
<?PHP
 print  "<pre>" . $row_sql['texte'] . "</pre>"; 
?>
Le texte d'origine sera affiché telquel:

Code : Tout sélectionner

Titre - item1 - item2

Posté : 26 avr. 2007, 14:56
par Ryle
En complément de ce qu'a dit sadeq, c'est en fait le navigateur qui va interpréter deux espaces consécutifs (ou plus) dans ton source comme un seul à l'affichage. De même une tabulation sera considéré comme un espace par le navigateur :)

Posté : 26 avr. 2007, 15:15
par coxine
merci beaucoup !
Je ne connaissais pas en effet !