1

我已经尝试了所有在 PHP 中输​​出换行符的方法。为什么以下不起作用?:

<?php

$foo = 'bar'; 
echo "Hello \n $foo!";

?>

这应该在 hello 和 bar 之间输出一个换行符,但事实并非如此。

我也试过 \r\n 而不是 \n

4

6 回答 6

11

如果您将其用作命令行脚本,这将起作用。我会使用PHP_EOL它,因为它为操作系统选择了正确的换行符。

但是,如果您使用 HTML(例如在浏览器中查看结果),则必须使用 HTML 换行方式,即:<br />

于 2013-06-07T19:47:28.060 回答
7

要在 HTML 中输出新行,您需要使用 HTML 的新行表示形式,即<br/>

php 有一个功能可以将所有自然换行转换为 HTML 换行 >nl2br()

然后你的代码应该看起来像

<?php

$foo = 'bar'; 
echo nl2br("Hello \n $foo!");

?>
于 2013-06-07T19:45:46.710 回答
6

<br>在 html 中插入换行符时使用

于 2013-06-07T19:45:26.477 回答
3

要直观地输出新行(在浏览器中),您需要HTML

echo "Hello\n<br />$foo!";

\n是系统换行。

于 2013-06-07T19:44:39.443 回答
1

尝试这个:

<?php

$foo = 'bar'; 
echo "Hello <br> $foo!";,

?>
于 2013-06-07T19:48:59.177 回答
0

如果您查看源代码,您会看到它实际上确实有一个新行,但是 HTML 中的空格无关紧要(显示输出的浏览器所期望的),但是<br />在您的语句中添加 a 会产生一个新行,因为这是浏览器读取新行并显示它们的方式。

于 2013-06-07T20:01:29.057 回答