闰年的最后一天,53或1周?

Naz*_*riy 3 php datetime date

我有一个脚本来处理原始CSV数据并生成按年度分组的报告.
看起来像这样:

//timezone is set to Europe/London
$date = new DateTime($raw['order_date']); // example: 12/31/2012

$key = $date->format('Y W'); // 2012 01

$array[$key][] = $raw['product_id'];
Run Code Online (Sandbox Code Playgroud)

一切正常,直到我试图解析在新年前夕产生的数据,由于某种原因,系统认为2012年12月31日是2012年的第1周.我不确定它是错误还是功能,但产生的报告肯定是错误.

传递此问题并将数据按周分组的正确方法是什么?

Ric*_*son 7

试试这个:

$key = $date->format('o W');
Run Code Online (Sandbox Code Playgroud)