Page 1 sur 1

Sauter à la ligne: quels choix?

Posté : 07 oct. 2005, 15:53
par Invité
Bonjour à tous,

Je sais bien que c'est un sujet maintes fois abordé, mais j'ai fait plusieurs tentatives qui ont échoué.

Je n'arrive pas à faire la différence entre "/n", "n2lbr", "str_replace ". Quelqu'un peut-il m'expliquer dans quels cas les utilise-t-on chacun? Je pourrais peut-être l'appliquer à mon cas précis.

Posté : 07 oct. 2005, 16:02
par DocType
\r\n ==> c'est le retour à la ligne, mais alors je saurais pas différencier \n et \
nl2br ==> fonction qui convertit automatiquement les retour à la ligne en br d'une variable.
str_replace ==> pour remplcaer du texte par un autre texte dans une variable

Posté : 07 oct. 2005, 16:10
par Cyrano
SAlut, alors allons y un par un:
  1. Ce n'est pas /n mais \n : ça indique un retour de ligne dans le code, mais ça n'apparaitra pas à l'affichage, seulement dans la source. Si j'écris : <p>Une première phrase.</p><p>Une autre phrase avec \nune rallonge</p> comme il s'agit d'éléments de blocs, à l'affichage, j'aurai bien deux lignes, mais le code source affichera le tout sur deux lignes coupées à des endroits différents : l'affichage coupera après le </p> mais dans la source, on aura le retour après le "\n";
  2. nl2br() est une fonction de PHP poour remplacer automatiquemetnt les "\n" par des "<br />" : la même chaîne que ci-dessus sera cette fois affichée sur trois lignes, coupées après le </p> et le <br />. Voir la doc sur ce sujet
  3. str_replace() est une fonction de PHP qui permet de changer des éléments dans une chaine de caractère en remplaçant tout ou partie d'un élément par un autre. Voir la doc sur ce sujet

Posté : 07 oct. 2005, 16:17
par Invité
str_replace ==> pour remplcaer du texte par un autre texte dans une variable
Je ne vois pourquoi c'est utilisé pour des sauts à la ligne dans ce cas (j'ai vu un post là-dessus sur le forum) :?:

Si j'ai <? echo $truc["machin"] ?> et que les résultats s'affichent : truc1 truc2 truc3.

Mais je veux qu'ils s'affichent:
truc1
truc2
truc3

J'ai déjà essayé
echo $truc["machin"]."\n";
echo nl2br ($truc["machin"]);
Mais aucune des deux ne marchent. Vous en connaissez d'autres? :)

Posté : 07 oct. 2005, 16:56
par zeus
$truc["machin"], il contient quoi ?
Si tu as

Code : Tout sélectionner

truc1 truc2 truc3
à l'écran, dans le source HTML, tu as quoi ?

Posté : 07 oct. 2005, 18:15
par Invité
J'ai trouvé. Zeus avait raison : c'était un problème de html :oops:

Dans le code ça générait:
<td>truc1</td>
<td>truc2</td>
<td>truc3</td>

Et j'ai fait en sorte que ça donne:
<td>truc1 <br />
truc2 <br />
truc3 <br /></td>

Merci pour votre aide :D