PHP DateTime->sub() 不会冒泡长达几天

标签 php datetime dateinterval

如果 DateTime $serverTime 是例如2016-02-03 00:30:00 我这样减去 90 分钟

$serverTime->sub(new DateInterval("PT1H30M"));

$serverTime 现在为 2016-02-03 23:00:00。请注意,日期仍然是 2 月 3 日。虽然预计会下降 1,但应该是 2016-02-02 23:00:00。还有其他方法可以实现这一目标吗?

最佳答案

您做错了什么或正在修改它:

$serverTime = DateTime::createFromFormat('Y-m-d H:i:s', '2016-02-03 00:30:00');
print_r($serverTime);
$serverTime->sub(new DateInterval("PT1H30M"));
print_r($serverTime);

对我来说效果很好:Demo .

关于PHP DateTime->sub() 不会冒泡长达几天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35166130/

相关文章:

PHP DateInterval 不返回该月的最后一天

php - wordpress自定义帖子类型分页第2页未找到

php - 将 PHP 变量传递给包含的文件?

python - 在 pandas/matplotlib 中格式化时间序列 x 轴

php - Laravel Carbon 如何在不改变小时的情况下改变时区

php - 计算日期间隔的平均值

php - 在保持良好用户体验的同时调用 10 个 API 的最佳解决方案?

php - 错误:调用未定义的方法 Illuminate\Database\Query\JoinClause::whereIn()

java - 将 Hippo JCR 日期时间转换为 Java 格式

PHP DateInterval 创建瞬间(微秒或毫秒)间隔