让我困惑的一件事是编码时间.我对如何做到这一点非常困惑!简单地说,我有一个MySql时间戳,我想从24小时中减去它.
基本上,我正在尝试编写只允许您每24小时完成一次操作的内容,然后如果他们尝试完成更多操作,那么一旦它会告诉他们需要多长时间才能再次执行操作.
这是我目前的代码:
$dailylogincheck = 2015-08-16 13:30:32 //MysqL Timestamp
date_default_timezone_set("America/New_York");
$lastloginbonus = new DateTime($dailylogincheck);
$currenttime = $lastloginbonus->diff(new DateTime(date("Y-m-d H:i:s")));
我不必使用此代码(如果有更好的方法来执行此操作).所以我只想从24小时中减去当前的时间戳,但我不知道如何在PHP中执行此操作:(请帮忙!
附:我只想显示如下句子:你已经在过去的24小时内完成了这个.请在X小时X分钟后回来再试一次.
解决方法:
希望这工作:-)
<?PHP
$dailylogincheck = '2015-08-16 13:30:32';
$end = new DateTime($dailylogincheck);
$end->add(new DateInterval('P1D'));//add 1 day to find end date
$Now = new DateTime('Now');
$interval = $end->diff($Now);
if($end->diff($Now)->days >= 1){
echo 'go for it';
}else{
echo $interval->format('%H hours, %i minutes until you can XXX');
}