尝试运行
<?php
echo filemtime("test.txt")."\n";
sleep(4);
file_put_contents("test.txt", "test");
echo filemtime("test.txt")."\n";
?>
对我来说,命令行打印:
1343490984
1343490984
这不可能是对的,不是吗?
从filemtime
文档中:
注意:此函数的结果被缓存。有关
clearstatcache()
更多详细信息,请参阅。
您需要在再次致电clearstatcache()
之前致电filemtime()
:
echo filemtime("test.txt")."\n";
sleep(4);
file_put_contents("test.txt", "test");
clearstatcache();
echo filemtime("test.txt")."\n";