从(当前日期/时间)减去(保存的日期/时间)的PHP脚本

时间:2015-09-29 16:51:31

标签: php

第一次在这里发帖,我先找了一个答案,找不到一个有效的......

我有一个代码,用于根据数据库中记录的时间检查当前时间。

$saved = 2015-09-29 11:11:26

$current = 2015-09-29 11:41:00

if (($current - $saved) < 2 minutes) {
// nothing happens
} else {
// set game to complete
}

显然我的if(())语句不正确,这是我需要帮助的。另外,我需要这个脚本在后台运行每2分钟,cron任务?没有人会进入这个页面checktimes.php.

2 个答案:

答案 0 :(得分:0)

您需要将日期转换为时间戳,然后比较两个日期。

 $timestamp_saved = strtotime($saved);

 $timestamp_current = strtotime($current);

 if(($timestamp_current-$timestamp_saved) < (2*60)){
   // nothing happens
 } else {
  // set game to complete
  }

答案 1 :(得分:0)

使用DateTime对象的另一种方法可能是:

$saved  = DateTime::createFromFormat('Y-m-d H:i:s', '2015-09-29 11:11:26');
$current = DateTime::createFromFormat('Y-m-d H:i:s', '2015-09-29 11:41:00');

$saved_transformed  = date_format($saved, 'YmdHis');
$current_transformed  = date_format($current, 'YmdHis');


if (($current_transformed - $saved_transformed) < 120) {
    echo "nothing!";
} else {
    echo "game complete!";
}