1
$Datetime = $Datetime->add(new DateInterval('PT'.$secondsToAdd.'S'));
$Datetime = $Datetime->format('Y-m-d H:i:s');

如果 $secondsToAdd 是一个整数,一切正常,但如果它等于 0.5 或 10.5,则会引发错误。有人能帮我吗?如何增加 10.5 秒?

4

1 回答 1

2

环顾互联网,似乎本机DateInterval目前无法处理几分之一秒。一些错误被接受,但尚未采取行动。

我发现这个类的扩展DateInterval声称能够处理它(未经测试但看起来很有希望)。

上面链接的解决方案有正确的想法,但它没有完成这项工作。为了完成这项工作,需要重载 的所有方法DateInterval以考虑类的附加功能,并且还需要以DateTime类似的方式进行扩展。我将保留链接,因为它并非完全没用,但并不能完全解决问题。

当我玩弄它并想出一些可行的东西时,我会尝试添加一些更有用的信息。

于 2012-10-10T10:33:03.093 回答