我想在我的页面上打印格式化的日期.我有一个对象日期,我使用$ this-> Time-> format()进行格式化.在12月27日之前一切正常.不幸的是,12月26日之后的所有日期,格式都会改变我的年份数.
这是我的调试($ date)
object(Cake\I18n\Time) { 'time' => '2015-12-30T00:00:00+0000', 'timezone' => 'UTC', 'fixedNowTime' => false }
这是我的调试($ this-> Time-> format($ date,'YYYY'))
'2016'
我试过使用i18nFormat,但我有同样的问题.这是我的调试($ date-> i18nFormat('YYYY'));
'2016'
谢谢你的帮助
i18n日期的格式使用IntlDateFormatter
,使用ISO日期格式模式,其中YYYY
不仅仅意味着全年,而是全周编号年份,2016
因为当天的一周2015-12-30
跨越到下一年,或更具体地说,因为那一周包括1月1日仍然是工作日(星期一到星期五),因此它被视为2016
根据ISO周规则的第一周.
另见https://en.wikipedia.org/wiki/ISO_8601#Week_dates
您想要使用yyyy
,这将返回常规日历年.