被新线爆炸 - 未知的角色

时间:2013-12-06 20:07:52

标签: php newline

我有这段代码:

$text = "Line 1

Line 3";

$n = explode("\r", $text);

如果我回复$n[1](第2行),我会得到一个空格。但$n[1] == " "会返回false

那个角色是什么?

更新

经过进一步的研究,我应该真正使用:

$n = preg_split("/\r\n|\n|\r/", $text);

2 个答案:

答案 0 :(得分:5)

换行符可以是\n\r\r\n,具体取决于生成新行的操作系统和/或应用程序

请参阅Newline#Representations

答案 1 :(得分:0)

文字的新行是\r\n。所以你的字符串是:

$text = "Line 1\r\n\r\nLine 3";

explode("\r",$text) make:

array("Line 1","\n","\nLine 3");

\n不等于“”或“”

由于历史原因,为什么有多个新线代表,请参阅:

Rationale of choosing difference new line representation by Unix, Mac, DOS/Windows?