php - 从给定时间减去一秒

标签 php datetime time

我想在给定时间中添加 1 天,然后减去(减去)1 秒。

我做到了:

$fromDate = date("Y-m-d", strtotime("2012-09-28")).' 00:00:00';
$date = strtotime(date("y-m-d H:m:s", strtotime($fromDate)) . " +1 day") - 1;
$toDate = date('Y-m-d H:m:s', $date);
echo $toDate;

而不是 2012-09-28 23:59:59它返回2012-09-29 00:09:59

我做错了什么?

最佳答案

你在兜圈子,而不是到达代码中的要点。这是我使用 DateTime 对象的解决方案:

$time = new DateTime("2012-09-28");
$time->modify("+1 day");
$time->modify("-1 second");

var_dump($time);

或者,如果您只需要一天中的最后一秒,为什么不直接:

$time = "2012-09-28";
$time .= " 23:59:59";

因为每天的秒数/分钟/小时数不太可能改变。

关于php - 从给定时间减去一秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12885098/

相关文章:

php - 具有多个句柄的 Jquery UI slider

java - 如何将 UTC 日期时间转换并格式化为本地时间

c++ - 微秒和毫秒的转换和比较

python - 在 Python 中添加和比较日期时间

java - 如何从 JSONObject 检查值的 json 日期类型?

python - Pandas:为什么使用 .loc 进行系列索引在第一次运行时花费了 100 倍的时间?

c - 如何向包含 UTC 时间的 tm 结构添加分钟?

php - Dropzone.js - 如何使用正常形式并提交到 mysql

php - nginx 无法加载索引文件

php - 这两个阶乘函数是否都在 O(n) 中运行?