6

実行してみてください

<?php
  echo filemtime("test.txt")."\n";
  sleep(4);
  file_put_contents("test.txt", "test");
  echo filemtime("test.txt")."\n";
?>

私にとって、コマンドラインは次のように出力されました:

1343490984
1343490984

そんなはずないですよね?

4

1 に答える 1

17

filemtimeドキュメントから:

注:この関数の結果はキャッシュされます。詳細については、を参照clearstatcache()してください。

もう一度電話clearstatcache()する前に電話する必要があります。filemtime()

echo filemtime("test.txt")."\n";
sleep(4);
file_put_contents("test.txt", "test");
clearstatcache();
echo filemtime("test.txt")."\n";
于 2012-07-28T16:05:20.840 に答える