我试图在我的代码中获取给定日期的年份和星期:
$dueDate->format('W , Y');
在上面的代码中,duedate 是一个具有以下日期值的日期时间对象:
December 31, 2018
当我输出上面指定的格式时,我得到这个:
01 , 2018
分别查看每个值,函数是正确的。然而,在一起是令人困惑的。
它似乎将 12 月 31 日视为第一周,因为它落在星期一,所以从技术上讲是正确的,这是 2019 年的第一周。不过,在这种情况下,我希望这一年滚动并阅读2019年。
在这种情况下,我如何解决此问题以仅滚动一年?任何帮助,不胜感激。
您需要使用 ISO-8601 周编号年份,如果您想要 ISO-8601 周的年份,则为 o。 从文档中:
ISO-8601 周编号年份。此值与 Y 相同,不同之处在于,如果 ISO 周数 (W( 属于上一年或下一年,则改用该年份。(在 PHP 5.1.0 中新增(
$dueDate->format('W , o');