【问题标题】:How to get weeks between two dates如何在两个日期之间获得周数
【发布时间】:2012-03-23 14:23:19
【问题描述】:

如何在几周内获得可靠的日期差异?

目前为止

<?php
$a = new DateTime('2010-09-01');
$b = new DateTime();

$c = $a->diff($b);

现在我得到一个包含年、月等的 DateInterval,但据我所知,一年没有正好 52 周,所以一个月也没有正好 4 周。

对于如何获得真实、可靠的周数有什么建议吗?

【问题讨论】:

  • 周数还是真正的周数?因为真的是几周,你可以使用时间戳,然后除以秒/分钟/小时/天/7
  • 是的,谢谢,就是这样,我又把它弄得太复杂了……

标签: php datetime datediff dateinterval


【解决方案1】:

也许您可以计算两个日期之间的天数并除以 7?

【讨论】:

  • 就这么简单。为什么我总是把情况复杂化? :) 谢谢! (我会尽快接受)
  • 不正确,例如 startDate 是 01/02/2020,endDate 是 10/02/2020,除以 7 只看到 2 周,但应该是 3
  • 从 startDate 01/02/2020 到 endDate 10/02/2020 之间有 9 天。应该给你 1 周的时间。
【解决方案2】:

得到天数的差异,然后除以 7?或者,如果您使用的是旧版本的 PHP,请获取以小时/分钟/秒为单位的差异,并进行相应的计算..

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-15
    • 1970-01-01
    • 1970-01-01
    • 2017-11-16
    • 2022-11-13
    相关资源
    最近更新 更多