@evgen9586
Backend-dev. Лублу Enterprise и не люблю понты)

Как вывести месяц на русском yii2 formatter?

Это стоит
Yii::$app->formatter->timeZone = 'UTC';
Yii::$app->formatter->locale = 'ru-RU';


Дату беру в модели и вывожу туть
<td class="view-message  text-right"><?=Yii::$app->formatter->asDatetime($item->date, "php:d.m H:i")?></td>


В документации https://www.yiiframework.com/doc/guide/2.0/ru/outp...

Я смотрю что значения типа Timestamp оно не будет форатировать в словесный вид, а только значения типа Date.

Но тип date я не могу использовать так как он не работает с дефолт current_timestamp, а это сделано для фиксации времени прихода сообщений.

Реально ли используя форматер Timestamp дату к словесному типу привести?
  • Вопрос задан
  • 4142 просмотра
Решения вопроса 2
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
<?=Yii::$app->formatter->asDatetime($item->date, 'long')?>

думаю проблема у Вас не в timestamp, с ним работает без проблем. А вот если у Вас нет intl - то будет выводить на английском. Так что скорее всего Вы не там копаете. Копайте php.ini, пока не найдете:
;extension=php_intl.dll
Ответ написан
myks92
@myks92 Куратор тега Yii
Нашёл решение — пометь вопрос ответом!
Попробуйте

Если нужно Что-то такое
15 мая 2018
, то такой код подойдет
<?= Yii::$app->formatter->asDate($item->date, 'long')?>


Если же просто месяц, например
мая

<?= Yii::$app->formatter->asDate($item->date, 'php:M')?>


Если по вашим данным, то
<?= Yii::$app->formatter->asDate($item->date, 'php:d.M H:i')?>


Если же не переводится язык, то нужно смотреть php.init у меня была такая же проблема решил именно в этом файле. При переводе скорее всего проблема в сервере, а не фреймворке

В самом верху конфиге должно стоять:
'language' => 'ru-RU',
    'timeZone' => 'Europe/Moscow',
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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