Zend framework Zend_Date::toString()输出的年份不正确。我的代码中有Bug,还是Zend_Date?
我正在使用Zend framework Zend_Date::toString()输出的年份不正确。我的代码中有Bug,还是Zend_Date?,zend-framework,zend-date,Zend Framework,Zend Date,我正在使用Zend_Date设置并获取年份,但没有将其设置为正确的年份。我将年份设置为2010年,然后返回2009年。我做错了什么?Zend_Date中是否存在错误 $date = new Zend_Date('2010-01-03', 'YYYY-MM-dd'); echo $date->toString('MMMM d, YYYY'); //outputs January 3, 2009 必须正确设置年份,因为获取日期的年份部分有效: echo $date->get(Zend_
Zend_Date
设置并获取年份,但没有将其设置为正确的年份。我将年份设置为2010年,然后返回2009年。我做错了什么?Zend_Date中是否存在错误
$date = new Zend_Date('2010-01-03', 'YYYY-MM-dd');
echo $date->toString('MMMM d, YYYY');
//outputs January 3, 2009
必须正确设置年份,因为获取日期的年份部分有效:
echo $date->get(Zend_Date::YEAR); //2010
解决方案:
好吧,我让它工作了……你必须使用小写:yyy
echo $date->toString('MMMM d, yyyy');
代表。2010-01-03是ISO 2009年第53周第7天YYYY
表示实际日历年yyy
- 我也遇到了这个问题
在Zend_Date类中,“yyy”表示“ISO年”的4位表示,而“yyy”表示“年”的4位表示。是的……我真的不知道ISO年是什么意思,所以我假设它们几乎相同。我也不是100%确定,所以我将展示一个wikipeida页面: