PHP换行符在文本文件中不起作用

PHP换行符在文本文件中不起作用,php,file,text,newline,Php,File,Text,Newline,我正在使用PHP代码: $numberNewline = $number . '\n'; fwrite($file, $numberNewline); 将$number写入文件 由于某种原因\n出现在文件中。我在mac电脑上。可能有什么问题?'\n'在单引号中是一个文本\n 双引号中的“\n”被解释为换行符 尝试此操作如果插入“\n”不会产生任何结果,您也可以尝试添加“回车符”和“新行”的“\r\n”。之所以看不到新行,是因为.txt文件像堆栈一样写入其数据。它从开头开始写,然后在完成后,闪

我正在使用PHP代码:

$numberNewline = $number . '\n';
fwrite($file, $numberNewline);
将$number写入文件


由于某种原因\n出现在文件中。我在mac电脑上。可能有什么问题?

'\n'
在单引号中是一个文本
\n

双引号中的“\n”被解释为换行符


尝试此操作

如果插入“\n”不会产生任何结果,您也可以尝试添加“回车符”和“新行”的“\r\n”。

之所以看不到新行,是因为.txt文件像堆栈一样写入其数据。它从开头开始写,然后在完成后,闪烁的线条(指示下一个角色将要去哪里的线条)回到开头。因此,您的“\n”必须在开头

而不是写:

<?php
     $sampleLine = $variable . "\n";
     $fwrite($file, $sampleLine);
?>

你应该写:

<?php
     $sampleLine = "\n" . $variable;
     $fwrite($file, $sampleLine);
?>

使用PHP\u EOL。PHP_EOL是独立于平台的好方法

$numberNewline = $number .PHP_EOL;
fwrite($file, $numberNewline);

PHP_EOL是跨平台兼容的(DOS/Mac/Unix)。

以上这些都不适用于我,但它非常简单-下面是代码。。。 请用接吻法

echo file_put_contents("test.txt","\r\n \r\n$name \r\n$email \r\n$phone", FILE_APPEND);
它设置一个新的空行,然后一次追加一行

$numberNewline=$number'\r\n'

fwrite($file,$numberNewline)


试试这个

不确定,但我认为\n只有在您使用“Not”时才有效(
'\n'
是错误的,而
“\n”
是正确的)刚刚开始,Mac、Windows和*nix使用不同的换行符(通常)。为什么,天知道。这让我发疯了。搜索一下新行,看看。哦,是的,你需要使用双引号字符串。对我来说,这甚至对新行都不起作用。唯一对我起作用的是带有文本文件的“\r\n”。这取决于服务器的操作系统。好的。我的开发服务器和生产服务器都不同(操作系统也有所不同),你能让我知道我应该用哪一个吗?请看下面chotesah的答案因为我想不起来怎么做了,所以我问了互联网并登陆了这里。我一看到这个答案就想起来了。嗯。这个,真的,是最好的一个。其他的答案可能有效,但这是最正确的答案。是吗?它会节省原始的emai吗例如,在unix上的ls不正确,没有那么完美
echo file_put_contents("test.txt","\r\n \r\n$name \r\n$email \r\n$phone", FILE_APPEND);