第一次在这里发帖,我先找了一个答案,找不到一个有效的......
我有一个代码,用于根据数据库中记录的时间检查当前时间。
$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.
答案 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!";
}