2010-10-04 34 views
14

我在写一个使用PHP的TXT文件。我想在必要时在TXT文件中插入实际换行符。我尝试了\ n \ r \ r \ n \ n \ r ...的所有组合,但这些都不会导致任何换行符出现 - 在大多数情况下,我看到文本“\ n”出现在TXT文件中,没有linebreak。用PHP写入TXT文件,想要添加一个实际的换行符

我也试过chr(13)。

任何其他的想法,将不胜感激。

+2

对于PHP_EOL,某些源代码可能有用 – ITroubs 2010-10-04 16:14:53

回答

19

听起来像你可能会使用单引号,即'\n'而不是"\n"。 (如!你应该)

如果你想继续用单引号偏差,有两个选项:

file_put_contents('/path/to/file.txt', 'Hello friend! 
This will appear on a new line. 
As will this'); 

// or 

file_put_contents('/path/to/file.txt', 'Hello friend!'."\n".'This will appear on a new line.'."\n".'As will this'); 
26

要使“\ n”工作,您需要使用双引号,而不是'\ n'。

你应该使用常量PHP_EOL代替,以便它可以自动适应OS( “\ n”, “\ R” 或 “\ r \ n”)。

file_put_contents('file.txt', 'Bla' . PHP_EOL . 'Bla'); 
+12

+1。 – 2010-10-04 16:54:43

+0

我无法在php.net上找到PHP_EOL,我可以在哪里了解更多关于它的内容?谢谢! – Drewdin 2010-10-04 19:14:17

+0

http://php.net/manual/en/reserved.constants.php – 2010-10-04 20:29:44

2

\ r \ n在Windows Server \ n在Linux 确保你上传的文件为ASCII。

1

你也可以使用chr(10)这是换行符。