1

I am trying to delete a $lockfile if the timestamp is more than 20 minutes.

if (file_exists($lockfile) && time() - filemtime($lockfile) > strtotime("+20 minutes")) {
    // If lockfile is alive for more than 20 minutes, unlink it
    unlink($lockfile);
}

I can not figure out why it is not working. Probably something simple that I am overlooking right now. Thank you in advance!

4

1 に答える 1

2

strtotime("+20 minutes")今から 20 分後の日付のタイムスタンプを返します。これは、2 つのタイムスタンプの差よりも大きくなります。20 分が数秒かかるまでに交換する必要があるため、次のようになります。

if (file_exists($lockfile) && time() - filemtime($lockfile) > 20*60) {
    // If lockfile is alive for more than 20 minutes, unlink it
    unlink($lockfile);
}

これでうまくいくはずです。

于 2016-06-08T20:29:54.750 に答える