web-dev-qa-db-ja.com

PHPが存在しない場合はファイルを作成します

ファイルを作成し、コンテンツを動的に書き込もうとしています。以下は私のコードです。

$sites = realpath(dirname(__FILE__)).'/';
$newfile = $sites.$filnme_epub.".js";

if (file_exists($newfile)) {
    $fh = fopen($newfile, 'a');
    fwrite($fh, 'd');
} else {
    echo "sfaf";
    $fh = fopen($newfile, 'wb');
    fwrite($fh, 'd');
}

fclose($fh);
chmod($newfile, 0777);

// echo (is_writable($filnme_epub.".js")) ? 'writable' : 'not writable';
echo (is_readable($filnme_epub.".js")) ? 'readable' : 'not readable';
die;

ただし、ファイルは作成されません。

回答とヘルプを共有してください。ありがとう!

14
shyamkarthick

使用してみてください:

$fh = fopen($newfile, 'w') or die("Can't create file");

そこにファイルを作成できるかどうかをテストします。

ファイルを作成できない場合は、おそらく、Webサーバーのユーザーがディレクトリを書き込めないためです(通常は「www」など)。

chmod 777 folderファイルを作成するフォルダーに移動して、再試行してください。

動作しますか?

19
Alejandro Iván

関数is_fileファイルが存在するかどうかを確認します。

ファイルが存在しない場合、このサンプルは新しいファイルを作成し、コンテンツを追加します。

<?php

$file = 'test.txt';

if(!is_file($file)){
    $contents = 'This is a test!';           // Some simple example content.
    file_put_contents($file, $contents);     // Save our content to the file.
}

?>
5
Cyborg