-2

如果文件在同一天更新,我需要检查和更新文件。如果它较旧,则使脚本休眠一段时间并再次检查文件更新时间。问题是我用于重新分配文件时间的变量不起作用。如果文件在脚本运行期间更新,它会保留较旧的时间而不是更新的时间。请帮我 !

使用 filemtime 获取文件更新时间。使用while循环检查时间。

提前致谢..

感谢您及时的回复。这是代码

$current_date=date("Y-m-d 00:00:00");
$file_update_time=date("Y-m-d H:i:s", filemtime("/path/filename"));

while(new DateTime($file_update_time) < new DateTime($current_date))
{
sleep (120);
$file_update_time=date("Y-m-d H:i:s", filemtime("/path/filename"));
}
4

1 回答 1

0

filemtime()函数总是返回相同结果的原因是因为这个函数的结果正在被缓存。有关clearstatcache()更多详细信息,请参阅。

无需将date()功能与Datetime.

while(new DateTime('@'.filemtime('/path/filename')) < new DateTime('today')) {
    sleep(120);
    clearstatcache();
}
于 2013-10-12T16:19:27.790 回答