長時間実行されているphpスクリプトでファイルが変更されているのを監視しようとしています。基本的なアルゴリズムは次のとおりです。
...
$mtime = filemtime($filename);
sleep($delay);
if($mtime < filemtime($filename))
... // do something because file was changed elsewhere
問題はfilemtime
、同じスクリプトで同じ値を返すことです。たとえば、スクリプトがたとえば10分間実行されると、同じスクリプト内または他の方法でファイルに実際に加えられた変更に関係なく、常に同じ変更時間が取得されます。
実際に最新の変更時刻を取得する方法についてアドバイスをお願いします。