2017-02-27 42 views
0
while (!feof($file1) && $linecount++<$requiredLines) { 

     $line = stream_get_line($file1, $filesize, PHP_EOL); 

     fwrite($file2,$line); 
    } 

如何讓它寫在新行的每一行? 像這樣:我在哪裏錯了?寫入文件PHP

line1 
line2 
line3 

我已經試過這種方式,但後來我不符合條件:

while (!feof($file1) && $linecount++<$requiredLines) { 

     $line = stream_get_line($file1, $filesize, '\n'); 

     fwrite($file2,$line); 
    } 

我的想法是寫10行以上,但每次上新的生產線。

+1

它是''\ n「',而不是''\ n'' ...而且您必須將結尾連接到行。第三個可選參數用於不同的目的:檢測您讀取的文件中的行結束。 – arkascha

+0

當長度字節被讀取時讀取結束**,當找到由結尾指定的字符串(不包括在返回值中)**或EOF(以先到者爲準)時讀取結束。 – AbraCadaver

回答

3

添加行終止自己:

fwrite($file2, $line."\n"); 

注意轉義字符解釋在single-quote strings,你必須使用雙引號的字符串。

+0

你確定''\ n''會起作用嗎? – AbraCadaver

+0

@AbraCadaver令人驚歎。在有人指出它之前,我得到了3票贊成的完全破裂的答案。謝謝,我糾正了我的錯誤。 (我現在比Python更多地使用Python,並認爲它只是由引用樣式控制的可變擴展。) –

+0

@JonathonReinhart也不要混合使用語言:)在PHP中,您使用'.'來連接而不是'+'。 – Rizier123