【问题标题】:I want date time before paricular seconds我想要特定秒之前的日期时间
【发布时间】:2019-07-22 10:14:23
【问题描述】:

我正在显示测验的结果,其中我得到了用户支付测验的时间。和现在的日期时间。我想从中显示开始时间和结束时间。

从当前日期和时间我得到完成时间,但对于开始时间,我试图从当前日期时间之前的时间获取日期和时间。

为此,我正在编写此代码,但它不起作用。

我把我的代码放在下面。

<?php
 $timeTaken = $_POST['timeTaken'];
 date_default_timezone_set("UTC"); 
 $date = date("D d M Y h:i A");
 $started_date = date("$date", time() - gmdate("H:i:s", $timeTaken));
?>

我的 timeTaken 是 00:00:05 意味着 $timeTaken = '05';如何获取开始日期时间?

谁能帮帮我...

【问题讨论】:

  • 我不确定您到底在做什么,但是依靠用户输入来确定测验所用的时间似乎是个坏主意:用户可以将其更改为他/她想要的任何内容。
  • 如果$timeTaken 是一个以秒为单位表示所用时间的数字会容易得多。

标签: php date time


【解决方案1】:

使用这个

<?php
    $timeTaken = $_POST['timeTaken'];
    date_default_timezone_set("UTC"); 
    $timeArr = explode(':', $timeTaken);
    $date = new DateTime();
    echo $started_date = $date->sub(new DateInterval('PT'.$timeArr[0].'H'.$timeArr[1].'M'.$timeArr[2].'S'))->format('D d M Y h:i:s A');
?>

使用新的DateTime 函数并从当前时间中减去小时分钟和日期......这将为您提供所需的结果。我还添加了日期格式的秒数

【讨论】:

    猜你喜欢
    • 2011-07-29
    • 2010-10-07
    • 2011-02-18
    • 1970-01-01
    • 1970-01-01
    • 2019-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多