如何在php脚本中观看mtime更改?
问题描述:
我正试图观察一个文件被修改在一个长时间运行的PHP脚本。的基本算法是这样的:如何在php脚本中观看mtime更改?
...
$mtime = filemtime($filename);
sleep($delay);
if($mtime < filemtime($filename))
... // do something because file was changed elsewhere
问题是filemtime
返回相同的值withing相同的脚本,例如如果一个脚本运行了10分钟,它将总是获得相同的修改时间,而不管在同一个脚本中对文件做出的实际更改或其他方式。
请帮忙提供关于如何实际获取最新修改时间的建议?
答
在http://php.net/clearstatcache看看:
当使用stat(),LSTAT(),或在受影响函数表(见下面)中列出的其他功能,PHP缓存的功能,以便返回信息提供更快的性能。但是,在某些情况下,您可能需要清除缓存的信息。
编辑:你想让它运行一个特定的操作系统吗?然后会有其他通知的可能性(可能需要别的东西比PHP)。
是的,调用'clearstatcache()'是有用的,非常感谢。 – zzandy 2009-08-19 09:50:02