Question \r et \n

Résolu
moderno31 Messages postés 872 Date d'inscription   Statut Membre Dernière intervention   -  
moderno31 Messages postés 872 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
petite question comment on appelle \r et \n : des quoi ?
ce sont retou chariot et nouvelle ligne mais quel est le terme pour les désiner ?
Je cherche le nom
De plus il me semblait que ceci fonctionnait
$message = "lundi\n";
$message .= "mardi";

Je voudrais obtenir
lundi
mardi

Tant qu'on y est .= est bien un opérateur de concaténation ? Quelle différence avec le . (point)?

Merci merci
A voir également:

4 réponses

P@t@ch0n Messages postés 565 Date d'inscription   Statut Membre Dernière intervention   85
 
Parce que le mime du contenu renvoyé par ton code est du text/html, comme c'est du php je suppose, le mime par défaut établi dans le php.ini est celui-là.

En spécifiant une sortie en texte brut, tes sauts de lignes seront retranscris à l'affichage.
header('Content-type: text/plain'); // A mettre avant tout echo
2
pyschopathe Messages postés 1974 Date d'inscription   Statut Membre Dernière intervention   135
 
Si tu regardes le code source de ce que tu as affiché, tu devrais constater que lundi et mardi sont affichés sur deux lignes différentes, la solution de P@t@ch0n est donc la bonne.

Et si tu veux quand même afficher du html, tu passes par la fonction nl2br qui va te convertir les sauts de ligne en balise <br />.
0
pyschopathe Messages postés 1974 Date d'inscription   Statut Membre Dernière intervention   135
 
Bonsoir.

\r et \n sont des caractères de contrôle. Ils représentent respectivement un retour chariot (Carriage Return) et un saut de ligne (Line Feed). Sous les systèmes de type Unix, LF suffit pour sauter une ligne. Sous les systèmes Windows, il faut utiliser la séquence CRLF (\r\n).

Dans ton exemple, $message contiendra la chaîne "lundi\nmardi". Si écris cette chaîne dans un fichier (que ce soit un fichier texte ou un fichier généré par le serveur) et que tu affiches ce fichier sous linux, tu verras bien deux lignes.

L'opérateur .= n'est qu'une abréviation. $message .= "truc" signifie $message = $message . "truc". D'autres abréviations de ce type existent pour les opérateurs arithmétiques : +=, -=, *=, /=.
0
moderno31 Messages postés 872 Date d'inscription   Statut Membre Dernière intervention   92
 
Hello, merci de ta réponse très claire et nette.
Par contre je ne comprends pas pourquoi j'ai pas le résultat attendu.
echo "lundi\nmardi";
i.e et fx me renvoient
lundi mardi
J'ai eu l'idée de regarder le code source et je trouve bien
lundi
mardi

De quoi cela peut-il venir ?
0
moderno31 Messages postés 872 Date d'inscription   Statut Membre Dernière intervention   92
 
je n'ai pas bien compris mais c'est pas grave. Je reverrai çà après.
Merci de vos explications. J'ai pris note et j'approffondirai
0