如何在PHP中的echo中添加换行符?

jum*_*max 74 php

我试图为句子添加换行符,并/n 在下面的代码中添加了.

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;
Run Code Online (Sandbox Code Playgroud)

由于某些原因,我得到服务器错误的结果.我如何解决它?

Nul*_*teя 218

\n是一个换行符./n不是.


使用\n与

1.直接回显到页面

现在,如果您尝试将字符串回显到页面:

echo  "kings \n garden";
Run Code Online (Sandbox Code Playgroud)

输出将是:

kings garden
Run Code Online (Sandbox Code Playgroud)

你不会得到garden在新的生产线,因为PHP是一种服务器端语言,和您发送输出HTML,你需要在HTML创建换行符.HTML不明白\n.您需要使用该nl2br()功能.

它的作用是:

返回在所有换行符之前插入<br />或<br>插入的字符串(\ r \n,\n\r \n,\n和\ r \n).

echo  nl2br ("kings \n garden");
Run Code Online (Sandbox Code Playgroud)

产量

kings
garden
Run Code Online (Sandbox Code Playgroud)

注意确保\n用双引号回显/打印,否则它将按字面顺序呈现为\n.因为php解释器在单引号中解析字符串与as的概念

so "\n" not '\n'
Run Code Online (Sandbox Code Playgroud)

2.写入文本文件

现在,如果您回显到文本文件,您可以使用\n它,它将回显到一个新行,如:

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

$txt = "kings \n garden";
fwrite($myfile, $txt);
fclose($myfile);
Run Code Online (Sandbox Code Playgroud)

输出将是:

kings
 garden
Run Code Online (Sandbox Code Playgroud)


Mar*_*uni 16

使用echo时必须使用br,如下所示:

echo "Thanks for your email" ."<br>". "Your orders details are below:"
Run Code Online (Sandbox Code Playgroud)

它会正常工作

  • 当您在 php/服务器端语言文件中回显它们时,这将不起作用 (2认同)

Ale*_*lex 12

The new line character is \n, like so:

echo __("Thanks for your email.\n<br />\n<br />Your order's details are below:", 'jigoshop');
Run Code Online (Sandbox Code Playgroud)