IntlDateFormatter 返回错误的年份

TMH*_*TMH 5 php date intldateformatter

如果您运行以下代码

<?php

$date = new DateTime('2019-12-30 19:45:00', new DateTimeZone('Europe/London'));
$formatter = new IntlDateFormatter(
    'en_GB',
    null,
    null,
    'Europe/London',
    IntlDateFormatter::GREGORIAN,
    'MMMM YYYY'
);

echo $formatter->format($date);
Run Code Online (Sandbox Code Playgroud)

它会回声December 2020。这是班级的错误吗,还是我出了什么问题,因为我希望它会返回December 2019

小智 9

根据: https: //unicode-org.github.io/icu/userguide/format_parse/datetime/

Y 代表“一年中的一周”(无论它意味着什么),y 是我们习惯的常规年份参考。因此,要将当前年份替换YYYYyyyy,它应该可以完成工作