如果 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/