9

Webサイトの書き込みログファイルを作成しようとしています。これを行うには、次のコードを使用してファイルを開こうとします。現在、ファイルはまだ存在していませんが、ドキュメントには、「a +」フラグを追加すると、ファイルが存在しない場合でも確実に作成されると記載されています。

 $file = fopen($_SERVER['DOCUMENT_ROOT']."/logs/mylogfile.txt", "a+");

上記のコードは私に次のエラーを与えます...

Warning: fopen(E:/wamp/www/logs/mylogfile.txt) [function.fopen]: failed to open stream: No such file or directory

私は何を間違っているのですか?これがばかげた質問であるならば、すみません、私はPHPに非常に慣れていません。

4

1 に答える 1

17

fopenの2番目のパラメータ「a+」は、ディレクトリが存在する場合にのみファイルを作成できます。ログディレクトリがそこにあることを確認してください。そうでない場合は、次を使用します。

mkdir($_SERVER['DOCUMENT_ROOT']."/logs/", 0755, true);

(trueがキーです)fopen()の前

于 2012-06-04T07:07:29.817 に答える