【发布时间】:2016-07-09 13:33:31
【问题描述】:
我一直在使用 DateTime Diff(在 php 中)来获取日期对的各种设置 - 要显示的两个格式化日期,从日期到现在的差异(例如“开始日期是 3 个月 2 天前”),以及两个日期之间的长度(“长度为 2 个月 3 天”)。
问题是 DateTime Diff 忽略了其中一天,所以如果开始是昨天,结束是明天,它给出 2 天,而我想要 3 天,因为两个日期都应该包含在长度中。如果只是几天,我可以简单地将结果加 1,但我想使用 Diff 中的年/月/日结果,这些是在构造时确定的。
我发现获得所需结果的唯一方法是为开始和结束创建一个 DateTime(以获取格式化的日期和差异)。然后取结束日期时间,加上 1 天,然后算出长度。
这有点笨拙,但似乎没有办法告诉 DateTime Diff 在结果中包含开始日期和结束日期。
【问题讨论】:
-
到目前为止,没有。同样的事情也适用于 DatePeriod。这肯定是一个缺点,但正如您所知,它是可以克服的。