我有这个代码:
$text = "Line 1
Line 3";
$n = explode("'r", $text);
如果我回显$n[1]
(第2行),我得到一个空格。但是$n[1] == " "
返回false
。
那么这个角色是什么呢?
更新:
经过进一步的研究,我真的应该使用:
$n = preg_split("/'r'n|'n|'r/", $text);
换行符可以是'n
、'r
或'r'n
,具体取决于生成新行的操作系统和/或应用程序
参见Newline#表示
文本的新行是'r'n
。所以你的字符串是:
$text = "Line 1'r'n'r'nLine 3";
explode("'r",$text)
制作:
array("Line 1","'n","'nLine 3");
并且'n
不等于"或"
关于为什么有一个以上的新线表示的历史原因,请参阅:
Unix、Mac、DOS/Windows选择差异新线表示的理由?