Zend_Date:: toString () производит неправильный год. Ошибка в моем коде или 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_Date::YEAR); //2010

Решение:

Хорошо я заставил это работать... Вы сделали, чтобы Вы использовали нижний регистр: yyyy

echo $date->toString('MMMM d, yyyy');
  • YYYY стоит в течение года ISO. 03.01.2010 неделя 53, день 7 из 2009 года ISO
  • yyyy стоит в течение фактического календарного года.

7
задан Andrew 2 January 2010 в 21:10
поделиться

1 ответ

Я тоже столкнулся с этой проблемой.

В классе Zend_Date 'YYYY' означает 4-значное представление 'ISO года', где 'yyyy' означает 4-значное представление 'года'

.
12
ответ дан 6 December 2019 в 21:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: