2017-09-26 15 views
0

私は別の行に2つの名前(フォームデータ)を書き込むために以下のコードを取得しようとしています。 Atomで.txtファイルを開くと別の行に表示されますが、メモ帳では1行にしか表示されません。代わりに\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)をどのように解釈しているか、さまざまな[表現](https://en.wikipedia.org/wiki/Newline#Representations)を見てみるとちょっと違いますか? –

+0

この "$ nameOne" .PHP_EOL; –

答えて

0

使用PHP_EOL定数あなたは(のUnix/Linuxの\n作品だけでなく)Windowsのを使用しているため。

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 ORあなたは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詳細については、

関連する問題