2011-02-01 94 views
24

不工作我使用的PHP代碼:PHP換行符在文本文件中

$numberNewline = $number . '\n'; 
fwrite($file, $numberNewline); 

寫$號文件。

出於某種原因\ n出現在文件中。我在Mac上。可能是什麼問題?

+9

不知道,但我想\ n只有在使用的作品 「不 '(`' \ n'`是錯誤的,而`」 \ n「'是正確的) – JCOC611 2011-02-01 03:04:33

+0

剛剛送走了蝙蝠,Mac,Windows和* nix使用不同的換行符(一般來說)。爲什麼,上帝只知道,它迫使我堅持下去,搜索換行符並查看http://en.wikipedia.org/wiki/Newline。 – 2011-02-01 03:06:17

+0

哦,是的,你需要使用雙引號字符串 – 2011-02-01 03:07:47

回答

34
$numberNewline = $number . "\n"; 
fwrite($file, $numberNewline); 

試試這個

30

如果將 「\ n」 不會產生任何結果,你也可以嘗試 「\ r \ n」,它增加了一個 「回車」 和「新隊。」

1

你沒有看到新行的原因是因爲.txt文件像堆棧一樣寫入數據。它從頭開始寫,然後在完成之後,閃爍的線(指示你的下一個字符將要去的那一行)返回到開始。所以,你的「\ n」必須在一開始。

而是寫的:

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

你應該寫:

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

使用PHP_EOL。 PHP_EOL是獨立於平臺且很好的方法。

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

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

0

以上都不適合我,但它非常簡單 - 這裏是代碼... 請使用KISS方法。

echo file_put_contents("test.txt","\r\n \r\n$name \r\n$email \r\n$phone", FILE_APPEND); 

它設置一個新的空白行,然後每次追加一行。

0

$ numberNewline = $ number。 '\ r \ n';

fwrite($ file,$ numberNewline);

嘗試這個