2017-09-26 4 views
0

아래 코드에서 두 개의 이름 (양식 데이터)을 별도의 줄에 쓰려고합니다. Atom에서 .txt 파일을 열면 별도의 줄에 나타나지만 한 줄에 메모장에 나타납니다. 대신 \n 또는 \r\n자신의 줄에 .txt 파일에 이름을 쓰는 PHP 코드

<?php 
    error_reporting(E_ERROR | E_PARSE); 

    $nameOne = $_POST['nameOne']; 
    $nameTwo = $_POST['nameTwo']; 

    $newfile = fopen("newfile.txt", "w"); 
    $txt = "$nameOne\n"; 
    fwrite($newfile, $txt); 
    $txt = "$nameTwo\n"; 
    fwrite($newfile, $txt); 
    fclose($newfile); 
?> 
+0

편집자가 EOL (End Of Line)을 어떻게 해석하는지, 다른 [representations] (https://en.wikipedia.org/wiki/Newline#Representations)를보고 차이가 날 수 있습니다. –

+0

처럼 추가하십시오. 이 "$ nameOne".PHP_EOL; –

답변

0

사용 PHP_EOL 일정은 (유닉스/리눅스\n 잘 작동) 윈도우를 사용하고 있기 때문이다.

1

대신 \n

<?php 
    error_reporting(E_ERROR | E_PARSE); 

    $nameOne = $_POST['nameOne']; 
    $nameTwo = $_POST['nameTwo']; 

    $newfile = fopen("newfile.txt", "w"); 
    $txt = "$nameOne\r\n"; 
    fwrite($newfile, $txt); 
    $txt = "$nameTwo\r\n"; 
    fwrite($newfile, $txt); 
    fclose($newfile); 
?> 

의 사용 \r\n 또는 당신이 PHP_EOL

<?php 
     error_reporting(E_ERROR | E_PARSE); 

     $nameOne = $_POST['nameOne']; 
     $nameTwo = $_POST['nameTwo']; 

     $newfile = fopen("newfile.txt", "w"); 
     $txt = "$nameOne".PHP_EOL; 
     fwrite($newfile, $txt); 
     $txt = "$nameTwo".PHP_EOL; 
     fwrite($newfile, $txt); 
     fclose($newfile); 
    ?> 
3

다른 운영 체제를 사용할 수는 서로 다른 코드를 사용합니다. Windows는 "\r\n"이고, OSX는 "\n" 등입니다. 자동 검색을위한 코드 대신 PHP_EOL 상수를 사용하십시오!

여기로 이동 : http://php.net/manual/en/function.fopen.php 자세한 내용.