我有一個正在寫入的文件,我無法獲得file_put_contents以在新行上追加下一個條目,即使在換行符後面也是如此。我錯過了什麼?我在一臺Windows機器上。file_put_contents和一個新行幫助
$file = 'test.txt';
$message = "test\n\n";
file_put_contents($file, $message, FILE_APPEND);
我有一個正在寫入的文件,我無法獲得file_put_contents以在新行上追加下一個條目,即使在換行符後面也是如此。我錯過了什麼?我在一臺Windows機器上。file_put_contents和一個新行幫助
$file = 'test.txt';
$message = "test\n\n";
file_put_contents($file, $message, FILE_APPEND);
您如何查看$file
的內容?如果您使用記事本,則無法看到\n
。
,因爲你是你寫你的新的生產線後,定義行的末尾,你可能無法看到您的新生產線的PHP_EOL。因此,只有在將新內容添加到文本文件的最後一行之後纔會生成新行。
應該這樣寫:
$file = 'test.txt';
$message = 'some message that should appear on the last line of test.txt';
file_put_contents($file, PHP_EOL . $message, FILE_APPEND);
這個答案需要更多的愛。這解決了我的問題。 – ILikeTurtles 2013-07-18 20:49:34
非常適合我,謝謝! – 2015-12-24 01:33:07
只要給一個正常的新生產線,它的作品
$file = 'test.txt';
$message = "test
";
file_put_contents($file, $message, FILE_APPEND);
首先,閱讀一些關於新線字符。這是爲每個操作系統不同的...有LF,CR,CR + LF ...看一看here
在Windows上,你需要CR + LF(\r\n
)作爲馬修已經說過了。 在Linux上,只有LF需要(\n
)
但是,可以肯定,使用PHP_EOL
。
在使用文件時,您可能需要了解有關路徑和目錄分隔符的更多信息。他們也不同。使用DIRECTORY_SEPARATOR
代替正斜槓或反斜槓)
對於那些誰是合格的第二個參數file_put_contents作爲數組,而不是字符串,它也可以把PHP_EOL作爲最後一個數組元素:
file_put_contents($file, array('value 1', 'value 2', PHP_EOL), FILE_APPEND);
是的,在記事本中..好的,那麼這是我的問題呢?有什麼我可以做的,看看記事本中的休息嗎? – jim 2010-02-24 10:33:06
\ r \ n而不是\ n – VolkerK 2010-02-24 10:35:58
我使用記事本2。下載www.flos-freeware.ch – stillstanding 2010-02-24 10:36:53