尝试将简单的X分钟计时器添加到订单状态.我通过设置时区,将当前UNIX时间加载到变量中,然后为触发时间添加X分钟来实现.每次页面加载时,它都会检查存储的“触发”时间并将其与当前时间进行比较.如果当前时间戳大于存储的时间戳,请继续执行下一步.无论“现在”是否小于“超时”,都将进行下一步.
$Now = (int) time(); //1550450927
$overtime = strtotime(+5 minutes); //1550451222
//also tried datetime format
$Now = new DateTime('Now');
$overtime = $Now->modify('+10 Minutes');
if ( $Now >= $overtime ) { //if "overtime" has passed
//stuff happens with no regard for reality
//driving me absolutely bonkers
}
检查当前时间与请求时间的数据库输入,数字是否正确.它们的存储与UNIX时间戳示例完全相同.
解决方法:
调用Modify()会更新$Now值以及$overtime值.
另外,您可能对此很感兴趣How do I deep copy a DateTime object?
尝试:
$Now = (int) time(); //1550450927
$overtime = strtotime("+5 minutes"); //1550451222
//also tried datetime format
$Now = new DateTime('Now');
$overtime = (new DateTime("Now"))->modify("+5 minutes");
print_r($Now);
print_r($overtime);
if ( $Now >= $overtime ) { //if "overtime" has passed
echo "hit";
//stuff happens with no regard for reality
//driving me absolutely bonkers
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。