如何在php脚本的过程中观看mtime的变化?

时间:2009-08-19 09:37:43

标签: php windows filemtime

我正在尝试在长时间运行的php脚本中查看正在修改的文件。基本算法是:

...
$mtime = filemtime($filename);
sleep($delay);
if($mtime < filemtime($filename)) 
     ... // do something because file was changed elsewhere

问题是filemtime使用相同的脚本返回相同的值,例如如果一个脚本运行了10分钟,它将始终获得相同的修改时间,无论在同一脚本中或通过其他方式对文件进行实际更改。

请帮助提供有关如何实际获得最新修改时间的建议?

1 个答案:

答案 0 :(得分:2)

看看http://php.net/clearstatcache

当您使用stat(),lstat()或受影响的函数列表(下面)中列出的任何其他函数时,PHP会缓存这些函数返回的信息,以便提供更快的性能。但是,在某些情况下,您可能希望清除缓存的信息。

编辑:您希望这是针对特定操作系统运行的吗?然后会有其他通知可能性(可能需要除了php之外的东西)。