web-dev-qa-db-fra.com

Comment ajouter un saut de ligne dans echo en PHP?

J'essayais d'ajouter un saut de ligne pour une phrase et j'ai ajouté /n dans le code suivant.

echo "Thanks for your email. /n  Your orders details are below:".PHP_EOL;
echo 'Thanks for your email. /n  Your orders details are below:'.PHP_EOL;

Pour certaines raisons, le résultat est une erreur de serveur. Comment je le répare?

70
jumax

\n est un saut de ligne. /n n'est pas.


utilisation de \n avec

1. echo directement à la page

Maintenant, si vous essayez de renvoyer une chaîne à la page:

echo  "kings \n garden";

la sortie sera:

kings garden

vous n'obtiendrez pas garden dans la nouvelle ligne car PHP est un langage côté serveur et que vous envoyez la sortie au format HTML, vous devez créer des sauts de ligne en HTML. HTML ne comprend pas \n. Pour cela, vous devez utiliser la fonction nl2br() .

Qu'est-ce qu'il fait est:

Renvoie une chaîne avec <br /> ou <br> inséré avant toutes les nouvelles lignes (\ r\n,\n\r,\n et\r).

echo  nl2br ("kings \n garden");

sortie

kings
garden

Remarque Assurez-vous de bien faire écho/impression de \n entre guillemets, sinon, il sera traduit littéralement par\n. parce que l'interprète php analyse une chaîne entre guillemets simples avec le concept de tel quel

so "\n" not '\n'

2. écrire dans un fichier texte

Maintenant, si vous faites écho à un fichier texte, vous pouvez simplement utiliser \n et cela fera écho à une nouvelle ligne, comme:

$myfile = fopen("test.txt", "w+")  ;

$txt = "kings \n garden";
fwrite($myfile, $txt);
fclose($myfile);

la sortie sera:

kings
 garden
208
NullPoiиteя

Vous devez utiliser br lorsque vous utilisez echo, comme ceci:

echo "Thanks for your email" ."<br>". "Your orders details are below:"

et cela fonctionnera correctement

15
Maryam Homayouni

Le nouveau caractère de ligne est \n, comme suit:

echo __("Thanks for your email.\n<br />\n<br />Your order's details are below:", 'jigoshop');
12
Alex

Vous voudrez peut-être essayer\r\n pour le retour chariot/saut de ligne

2
Jonathan