由于某些奇怪的原因,插入echo "\n";
和其他scape序列字符对我来说不起作用,这就是我只使用<br />
的原因。
书籍和其他文件中的例子结果的图像似乎没问题。我目前正在使用XAMPP并且已经使用了与实际结果相同的WAMPP。这是为什么?
修改
在比较你的答案后,我似乎无法理解这个概念: PHP Linefeeds (\n) Not Working
编辑:
抱歉,我没有意识到上面的链接指的是写入文件的php代码。我只是想知道为什么我有这几个使用\ n的PHP示例程序,即使它在网页中输出。谢谢大家。
答案 0 :(得分:23)
在浏览器中运行PHP脚本时,默认情况下它将呈现为HTML。如果您正在使用的图书显示,则代码或插图不准确。您可以使用“查看来源”查看发送到浏览器的内容,并且您会看到您的换行符已存在。
<?php
echo "Line 1\nLine 2";
?>
这将在您的浏览器中呈现为:
Line 1 Line 2
如果您需要向浏览器发送纯文本,可以使用以下内容:
<?php
header('Content-type: text/plain');
echo "Line 1\nLine 2";
?>
这将输出:
Line 1
Line 2
PHP Linefeeds (\n) Not Working指的是将输出发送到文件而不是浏览器。
答案 1 :(得分:3)
你应该寻找nl2br()
。这将为您的输出添加换行符(<br>
),这将由浏览器呈现;新行不是。
答案 2 :(得分:3)
echo "\n"
可能正在发挥作用,而不是你期望的那样。
该命令将插入一个新的行字符。从它的声音,你使用浏览器来查看你的输出。请注意,如果您编写的HTML文件的正文内容如下所示:
<p>This
is
a
test </p>
浏览器渲染不包括新行,而只是显示“这是一个测试”
如果您想查看换行符,可以查看来源,并且您会看到源代码包含新行。
经验法则是,如果您需要在浏览器中使用新行,则需要使用HTML(例如<br />
),而如果您希望使用纯文本,则可以使用\n
答案 3 :(得分:2)
<br />
是新行的HTML标记,而
“\ n”是输出一个新行(用于实际)。
每次HTML文件转到下一行时,浏览器都不会输出新行。
答案 4 :(得分:1)
您可以使用nl2br功能将\n
转换为<br>
如前所述,HTML不会将\n
呈现为新行。它只识别<br>
html标记
答案 5 :(得分:0)
如果您正在使用HTML(例如在浏览器中查看结果),则必须使用以下行方式的HTML方式:<br>
答案 6 :(得分:-1)
/n
仅在用作简单文本时才有效,但是在这里,由于我们在html文档中进行编码,因此将其作为HTML文本,因此可以改为使用</br>
标签。