从time()函数计算php中的经过时间

时间:2013-12-22 19:26:57

标签: php

如果用户在日志记录中出错,并且他在过去几个月内更改了密码,我希望它会通知他,就像谷歌一样。当用户更改密码时,他的旧密码进入数据库以防他忘记密码(它询问他最后一次进入我的网站时没有问题,他记得的最后一个密码等等)。它还节省了time()格式变化的时间。我的问题是如何计算从改变到现在的经过时间并写下时间。如果它在本周发生变化,我希望它写出过了多少天,如果在本周没有改变它,它会写给他多少个星期过去了。 如何计算它并以这种方式“回显”结果?

1 个答案:

答案 0 :(得分:1)

当用户上次更改其密码时,让$timeOfChange为数据库中time()的值。然后,您可以使用以下代码段:

$diff = time() - $timeOfChange;
if ($diff <= 604800) { // 604800 seconds == 1 week
    echo floor($diff / 86400) . ' days'; // 86400 seconds == 1 day
} else {
    echo floor($diff / 604800) . ' weeks';
}

我想保持代码简单,所以我不注意像'1周'和'1天'这样的特殊情况,其中不需要最后的's'。因此,您可能希望扩展此类案例的代码。