我有这段代码:
$text = "Line 1
Line 3";
$n = explode("\r", $text);
如果我回复$n[1]
(第2行),我会得到一个空格。但$n[1] == " "
会返回false
。
那个角色是什么?
经过进一步的研究,我应该真正使用:
$n = preg_split("/\r\n|\n|\r/", $text);
答案 0 :(得分:5)
换行符可以是\n
,\r
或\r\n
,具体取决于生成新行的操作系统和/或应用程序
答案 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?