在PHP中,我试图创建一个换行符:
echo $clientid;
echo ' ';
echo $lastname;
echo ' ';
echo '\r\n';
之后,我在记事本中打开创建的文件,它逐字写入换行符:
1约翰做1约翰做1约翰做
我尝试过许多不同的\r\n,但没有一个有用。为什么换行符没有变成换行符?
在PHP中,我试图创建一个换行符:
echo $clientid;
echo ' ';
echo $lastname;
echo ' ';
echo '\r\n';
之后,我在记事本中打开创建的文件,它逐字写入换行符:
1约翰做1约翰做1约翰做
我尝试过许多不同的\r\n,但没有一个有用。为什么换行符没有变成换行符?
当前回答
对我来说什么都没用。
PHP_EOL
。”\ r \ n;
$NEWLINE_RE = '/(\r\n)|\r|\n/'; // take care of all possible newline-encodings in input file
$var = preg_replace($NEWLINE_RE,'', $var);
对我有用:
$admin_email_Body = $admin_mail_body .'<br>' ."\r\n";
$admin_email_Body .= 'This is line 2 <br>' ."\r\n";
$admin_email_Body .= 'This is line 3 <br>' ."\r\n";
其他回答
有一个方便的PHP函数用于HTML输出,它在新行中添加<br />标记:
echo nl2br("One line.\n Another line.");
双引号“”之间的字符串进行插值,这意味着它们将转义字符转换为可打印字符。
单引号之间的字符串是字面的,这意味着它们与输入的字符完全相同。
你可以把两者都写在同一行上:
echo '$clientid $lastname ' . "\r\n";
echo "$clientid $lastname \r\n";
输出:
$clientid $lastname
1 John Doe
实际上\r\n是输出的html部分。使用这些字符,你可以在html代码中创建换行符,使其更具可读性:
echo "<html>First line \r\n Second line</html>";
将输出:
<html>First line
Second line</html>
查看页面将:
First line Second line
如果你真的想这样做,你只需要用""引号修复单引号:
echo "\r\n";
否则,如果你想拆分文本,在我们的示例'第一行'和'第二行'中,你必须使用html代码:<br />:
First line<br />Second line
这将输出:
First line
Second line
此外,如果您将整个脚本替换为:
echo "$clientid $lastname \r\n";
浏览器不会将换行符解析为两行,因为在HTML中换行符没有任何意义。这就是为什么当需要在HTML中添加新行时,必须添加一些标记,<br>是最简单的一个:
echo [output text]."<br>\n";
这将输出HTML换行符。
请注意,无论如何添加新行都是个好主意,这样在检查页面源代码时就有了可读的HTML。
我还在单引号和双引号中尝试了这种组合。但没有一个奏效。与其使用\n,不如在双引号中使用<br/>。像这样的. .
$variable = "and";
echo "part 1 $variable part 2<br/>";
echo "part 1 ".$variable." part 2";