2016-11-23 10 views
-1

を、私はこのようなPHPを介した新しい.txtファイルを作成します:PHPは警告なしに新しいファイルを作成しません:「そのようなファイルを」

$file = 'students.txt'; 
    // opens file to load the current content 
    $current = file_get_contents($file); 
    // add new content to file 
    $current .= $_POST["name"] . " : " . $_POST["grade"] . PHP_EOL; 
    // writes content to file 
    file_put_contents($file, $current); 

をそれが正常に動作しますが、ファイルが存在しない場合、私は警告を受けます最初はこの場合、phpがファイルを作成するので問題はありませんが、この警告メッセージが画面に表示されないようにするにはどうすればよいですか? aではfopen

+1

ファイルが存在する場合は、明らかに_test_できます。または、それを「触れる」ことができます。 – arkascha

+1

'$現在= ''; if(file_exists($ file)){$ current = file_get_contents($ file); } ' –

+1

私はエラー/警告を抑制することをお勧めしません' is_file'でファイルを開く前にファイルが存在するかを簡単にチェックできますが、 '$ current = @file_get_contents($ file);'は警告を抑制するべきです –

答えて

1

使用(追加)モードでは、あなたが最初にそれを読む必要はありませんので、ファイルに追加するfile_put_contents()FILE_APPENDオプションを使用しthis

// opens file to load the current content 
if ($file = fopen('students.txt', 'a')){ 
    // add new content to file and writes content to file 
    fwrite($file ,$_POST["name"] . " : " . $_POST["grade"] . PHP_EOL); 
    // close file 
    fclose($file); 
    exit(0); 
} 
else { 
    echo "Cannot open file"; 
    exit(1); 
} 
0

をお読みください。必要に応じてファイルを作成します。

$file = 'students.txt'; 
$current = $_POST["name"] . " : " . $_POST["grade"] . PHP_EOL; 
// writes content to file 
file_put_contents($file, $current, FILE_APPEND); 
関連する問題