我有一个包含600秒(10分钟)的变量。
$_POST['offerEnd']
首先我找出600秒内的时间
$_SESSION['offerEnd'] = date("m/d/Y h:i:s", time() + $_POST['offerEnd']);
这给了我:
[offerEnd] => 06/30/2017 04:31:19
这是错误的,因为时间应该是17:31:19。
现在,当我加载页面时,我想显示在$ _SESSION [' offerEnd']时间之前剩余的秒数。
我真的不确定怎么做,我想如果现在的时间还在提议结束之前,我已经在if语句中使用它来做某事:
if (new DateTime() > new DateTime($_SESSION['offerEnd'])) {//do something}
但是我怎么能得到这个冒犯的秒数呢?
答案 0 :(得分:0)
如果您有2个DateTimes
,则可以使用getTimeStamp()
方法查看从一个到另一个的剩余时间。
$secondsLeft = (new DateTime($_SESSION['offerEnd']))->getTimeStamp() -
(new DateTime())->getTimeStamp();
您还可以在600秒后使用以下方法构建DateTime对象:
$_SESSION['offerEnd'] = new DateTime();
$_SESSION['offerEnd']->add(new DateInterval('PT'.$_POST['offerEnd'].'S'));