4

存在しない場合にのみPHPでファイルを書き込むことは可能ですか?

$file = fopen("test.txt","w");
echo fwrite($file,"Some Code Here");
fclose($file);

したがって、ファイルが存在する場合、コードはコードを記述しませんが、ファイルが存在しない場合、新しいファイルを作成してコードを記述します。

前もって感謝します!

4

3 に答える 3

6

の代わりにfopen()のモードで使用できます。これにより、ファイルがすでに存在する場合にfopenが失敗します。使用する場合と比較して、このようにチェックすることの利点は、存在をチェックしてから実際にファイルを開くまでの間にファイルが作成されても、正しく動作しないことです。欠点は、ファイルがすでに存在する場合、(やや奇妙なことに)E_WARNINGを生成することです。xwfile_exists

言い換えれば(以下の@ThiefMasterのコメントの助けを借りて)、次のようなものです。

$file = @fopen("test.txt","x");
if($file)
{
    echo fwrite($file,"Some Code Here"); 
    fclose($file); 
}
于 2012-03-24T08:44:15.207 に答える
5

コードを実行する前に、file_exists($ filename)でファイルが存在するかどうかを確認してください。

if (!file_exists("test.txt")) {
    $file = fopen("test.txt","w");
    echo fwrite($file,"Some Code Here");
    fclose($file); 
}
于 2012-03-24T08:40:16.890 に答える
0

$fileという変数を作成しました。この変数には、作成するファイルの名前が含まれています。

PHPのis_file関数を使用して、ファイルがすでに存在するかどうかを確認します。

is_fileがブール値のFALSE値を返す場合、ファイル名は存在しません。

ファイルが存在しない場合は、関数file_put_contentsを使用してファイルを作成します。

//The name of the file that we want to create if it doesn't exist.
$file = 'test.txt';

//Use the function is_file to check if the file already exists or not.
if(!is_file($file)){
    //Some simple example content.
    $contents = 'This is a test!';
    //Save our content to the file.
    file_put_contents($file, $contents);
}
于 2017-04-03T12:24:12.400 に答える