443 votes

PHP - comment créer un caractère de saut de ligne ?

En PHP, j’essaye de créer un caractère de saut de ligne :

 echo $clientid ; echo ' ' ; echo $lastname ; echo ' ' ; echo « \r\n » ; 

Ensuite j’ouvre le fichier dans le bloc-notes et le saut de ligne, elle écrit littéralement :

 1 Jean, John Doe\r\n 1 Doe\r\n 1 John Doe\r\n 

J’ai essayé beaucoup de variations de la \r\n, mais aucune ne fonctionne. Pourquoi ne tourne pas le saut de ligne dans une nouvelle ligne ?

700voto

Gumbo Points 279147

Seulement dans les chaînes entre guillemets doubles les séquences d'échappement \r et \n sont reconnus et remplacé par 0x0D et 0x0A respectivement, de sorte que:

"\r\n"

Seul chaînes entre guillemets ne sais seulement les séquences d'échappement \\ et \'.

Donc, à moins que vous concaténer la seule chaîne de caractères entre guillemets avec le saut de ligne généré en quelque sorte d'autre (e. g., en utilisant la double chaîne de caractères entre guillemets "\r\n" ou à l'aide de chr fonction chr(0x0D).chr(0x0A)), le seul autre moyen d'avoir un saut de ligne au sein d'une seule chaîne de caractères entre guillemets est de l'insérer littéralement avec votre éditeur de texte:

$s = 'some text before the line break
some text after';

Assurez-vous de vérifier votre éditeur pour sa fin de ligne, les paramètres si vous avez besoin de certains caractères spécifiques de la séquence.

258voto

nnevala Points 1690

Pour ligne indépendant de la plate-forme se terminant vous pouvez utiliser le prédéfini `` constant, comme dans :

102voto

user2961555 Points 39

La commande « echo » en PHP envoie la sortie vers le navigateur HTML brut donc même si les guillemets le navigateur n’analysera pas il en deux lignes parce qu’un caractère de nouvelle ligne en HTML ne veut rien dire. C’est pourquoi vous devez soit utiliser :

Quand à l’aide de « echo », ou plutôt utiliser fputs...

Cela va afficher le saut de ligne HTML au lieu de « / n ».

24voto

Kevin Miller Points 106

Les chaînes entre guillemets doubles (" ») interpoler, signifiant ils convertissent des caractères d’échappement pour les caractères imprimables.

Les chaînes entre guillemets simples ('') sont littéraux, signifiant le sont traités exactement comme les caractères sont tapés.

Vous pouvez peut avoir les deux sur la même ligne :

``

14voto

Jefffrey Points 31698

En fait \r\n est pour le html à côté de la sortie. Avec ces caractères, vous pouvez simplement créer un saut de ligne dans le code html pour le rendre plus lisible:

echo "<html>One line \r\n Second line</html>";

sortie:

<html>First line
Second line</html>

que l'affichage de la page sera:

First line Second line

Si vous voulait vraiment dire cela, vous avez juste à corriger la citation avec le "" citation:

echo "\r\n";

Sinon, si vous voulez dire à diviser le texte, dans notre exemple de "Première ligne" et "Deuxième ligne", vous devez utiliser le code html: <br />:

First line<br />Second line

qui sera de sortie:

First line
Second line

Aussi, il serait plus lisible si vous remplacez le script complet avec:

echo "$clientid $lastname \r\n";

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X