に新しい(空)を作成します:は、ディレクトリの名前を変更する - 私は、ディレクトリの名前を変更しようとしている
rename("billeder/123", "billeder/abc");
その直後、私はディレクトリ内のファイルの内容を変更します。
$s = file_get_contents("billeder/abc/fil.txt"); // note: using the new directory name (abc)!
$s = str_replace("123", "abc", $s);
file_put_contents("billeder/abc/fil.txt", $s);
結果は奇妙です:ファイルの内容が変更された、OK!
- まだ古いディレクトリ(123
)にあり、新しい空のディレクトリが作成されます(abc
)?!?!
PS:
- ディレクトリis_writable()
- 私は、Linuxサーバ上でよ(Ubuntuの、すべてが最新である)
- 私は完全なパスを使用して試してみました名前の変更() - 違いはありません。
- 名前の最後に/を追加しようとしましたが、違いはありません。
- 私はdirの名前を変更する前にファイルを最初に修正しようとしましたが、まだ違いはありません。
何が起こっているのか把握できますか?
これは、ファイルを扱うときにPHPの内部キャッシングと関係がある可能性があります。試してみてください。http://tw.php.net/manual/en/function.clearstatcache.php – Basti