如何在计算闰年的同时使用 DateTime 计算自年初以来的天数?

How to calculate number of days since start of year with DateTime while accounting for leap years?

我正在尝试使用 DateTime 对象根据自 1 月 1 日以来的天数计算当前日期。闰年在这里非常重要。然而,显然,这并没有考虑闰年。

这是我的代码:

$date = DateTime::createFromFormat('z Y', '59 2016');
echo $date->format('n/j/Y')."\n";
die();

原来这是我在提出这个问题时发现的 2012 年报告的 PHP 错误:

https://bugs.php.net/bug.php?id=62476

真烦人。

解决方法如下:

$date = DateTime::createFromFormat('m/d/Y', '01/01/2016');
$date->add(date_interval_create_from_date_string('59 days'));
echo $date->format('m/d/Y')."\n";