在PHP(和其他语言)中,\r和\n代表什么意思?

17
这些是什么?\r\n。是否有说明它们的教程?

4
实际上,它们不仅限于PHP。你也会在其他编程语言中看到它们。 - Rimian
7个回答

27
它们分别是“回车符”和“换行符”。通常在Windows系统中,你需要同时使用两个符号来表示行终止符:“\r\n”,而在大多数(所有?)Unix系统中,“\n”就足够了。
有关不同系统的差异,请参见Wikipedia Newline entry
有关转义序列的一般信息以及PHP中其他可用的转义序列的更多详细信息,请参见PHP manual
许多其他语言(例如C、C++、C#、Java、Perl、Python、Ruby)共享相同的回车符和换行符的转义序列,但它们都是为各自的语言指定的。(换句话说,这是与语言相关的,但对于许多语言来说答案都是相同的。)

16

\r回车符

\n换行符

这些在PHP以外的许多其他语言中也可用。


8

它们是转义序列\n表示换行,\r表示回车。

在Windows中,大多数文本编辑器的换行符为\r\n,在Unix中为\n。


6

虽然不是回答你问题的答案,但仍然相关:当你想插入新行时,建议使用PHP_EOL常量。PHP_EOL常量包含当前脚本运行平台所用的正确新行字符(在Unix上为\n,在Windows上为\r\n)。


5
\n是换行符或者行进制, 而\r则是回车符。它们的使用方式有所不同。在Windows操作系统中,\r\n表示键入了回车键(Enter Key),而在Linux和Unix操作系统中,\n表示键入了回车键。
在Unix及其所有类Unix系统中,\n是指行尾(End-of-line)的代码,\r则没有任何特殊含义。在早期的Mac系统(OS X之前),\r被用作行尾的代码。在互联网上,\r\n是文本格式的标准行结束符。 \r命令让打字机回到最左边停止位置,而\n命令让纸张向上滚动一行(这是一个更快的操作)。这就是为什么在\n之前总是有\r的原因,这样纸张可以在打字机还在向左移动时向上滚动。

5

\r是回车符(Carriage Return)\n是换行符(或新行)。

在Windows系统中,它们一起组成一个换行符(即每次按下回车键时,您的修复将得到\r\n)。

在PHP中,如果您打开Windows样式的文本文件,则会在您按回车键的段落/行末尾获得\r\n。如果它是Unix样式的文本文件,则只会获得\n


3
"\r"是回车符。在使用PHP时,请注意双引号!如果您使用单引号,您将得到字符串\r而不是换行符。
顺便说一下,如果您想在文本中插入换行符,最好使用"\r\n"以便在不同的操作系统中都能正确呈现。
以下是不同操作系统中的换行符:
Mac:\r Linux/Unix:\n Windows:\r\n

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接