在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,但没有一个有用。为什么换行符没有变成换行符?
当前回答
浏览器不会将换行符解析为两行,因为在HTML中换行符没有任何意义。这就是为什么当需要在HTML中添加新行时,必须添加一些标记,<br>是最简单的一个:
echo [output text]."<br>\n";
这将输出HTML换行符。
请注意,无论如何添加新行都是个好主意,这样在检查页面源代码时就有了可读的HTML。
其他回答
使用预定义的PHP_EOL常量:
echo $clientid, ' ', $lastname, PHP_EOL;
常量值将根据执行PHP的操作系统的行结束符来设置。在Linux上,它将是“\n”;在Windows上,它将是“\r\n”。
使用chr(13)表示回车,使用chr(10)表示换行
echo $clientid;
echo ' ';
echo $lastname;
echo ' ';
echo chr (13). chr (10);
使用PHP nl2br获取文本字符串中的换行符。
$text = "Manu是个好孩子。(输入)他代码写得很好。 回声nl2br($文本); 结果。 Manu是个好孩子。 他代码写得很好。
对我来说什么都没用。
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";
浏览器不会将换行符解析为两行,因为在HTML中换行符没有任何意义。这就是为什么当需要在HTML中添加新行时,必须添加一些标记,<br>是最简单的一个:
echo [output text]."<br>\n";
这将输出HTML换行符。
请注意,无论如何添加新行都是个好主意,这样在检查页面源代码时就有了可读的HTML。