在PHP中使用负数DateTime :: modify()

时间:2011-11-27 06:58:47

标签: php datetime

此代码:

$dateTime = new DateTime;
$dateTime->modify('+ -60 seconds');

适用于5.2.6但不适用于5.3。

我已经确定了一些解决方案,但我只是想知道那些遇到它的人是如何解决这个问题的。

我希望有一些设置允许在较新版本中使用上述格式,以便可以避免代码更改。

2 个答案:

答案 0 :(得分:0)

我认为Datetime :: sub()适用于PHP 5.3中的负值。 请查看此参考:http://www.php.net/manual/en/datetime.sub.php

答案 1 :(得分:0)

我在php 5.3.9上找到了

$ date-> modify('+ -60 seconds');

抛出一个解析警告 但这些工作:

$ date-> modify(' - 60秒'); $ date-> modify('+ - 60秒');

这两项工作: $ date-> modify(' - 2天'); $ date-> modify(' - 2 day');

但当然,即使使用添加和子功能,人们仍然需要注意几个月没有做人类可能称之为“加减一月”的事情。

参见例如3. http://www.php.net/manual/en/datetime.sub.php