• ベストアンサー

新しいファイルの書き込み ファイルができたり/出来なかったり 

$fp3 = fopen("ent.txt,"w"); とオープンして fputsで書き込み fclose("ent.txt"); でクローズしています このプログラムをlocalhost/a.phpとかで実行すると 出力されるはずの、ent.txtファイルが exploreで見えないのです IEの更新ボタン(再実行?)を押すと ent.txtが見えます WindowXPにApacheとphpをインストールして 実行しています またこのルーチンを関数化して外部ファイルに置き 実行する時に、includeでもってくるように 変えましたが、ロジック上は問題ないと 思うんですが よろしくお願いします

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

そのent.txtはWEBで公開されているディレクトリにあって、例えばhttp://localhost/ent.txt といったURLでリクエストしても「ページがありません」エラー、または無地の画面が出るという事でしょうか。また、IEでファイルリストを表示させているのでしょうか?この場合はIEのキャッシュを疑いますね。リロードすると表示されるというのは、そういう事なのではないでしょうか。 それともPHPでディレクトリなどを表示させているのでしょうか。こちらの場合はPHPのファイルステータスのキャッシュを疑います。この場合clearstatcache関数を実行すると、ファイルステータスのキャッシュがクリアされます。 良かったら、「ent.txtがIEで見えない」という状況の詳しい内容を教えて頂ければと思います。

参考URL:
http://jp.php.net/manual/ja/function.clearstatcache.php
ppmi
質問者

お礼

回答ありがとうございました わからなくて中断しています ありがとうございます

その他の回答 (1)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

エクスプローラで更新しないと表示されない原因とは直接関係ないのかもしれないですが fcloseは、 fclose(ファイル名の文字列) ではなくて fclose($fp3) のようにファイルハンドルで指定します。 どちらにしても終了時には、ファイルクローズされるはずですけど そのために、ファイルのフラッシュ&クローズがうまくいってないのかもしれません。

ppmi
質問者

お礼

ありがとうございました すみませんプログラムの方をみたら ファイル名ではなくハンドラーになってました 不注意が迷惑をかけて、すみません

関連するQ&A