Yii пользовательский формат даты (шаблон) - PullRequest
0 голосов
/ 19 июля 2011

Есть ли способ указать свой собственный шаблон даты помимо включенных (маленький, средний, полный). Главное здесь то, что он должен работать с i18n. Я попробовал пару вещей, но я не мог заставить его работать ...

Yii::app()->dateFormatter->format("l d/m/Y",$slide->date_start);

Я знаю о strftime, но проблема здесь в том, что разные хостинг-провайдеры используют разные строки локали ... и вам нужно настроить их ...

Я ищу элегантный способ сделать это.

Я бы хотел отобразить дату в l d/m/Y форме ...

Обновление: Не берите в голову ... Я только что узнал, что dateFormatter не использует стандартный формат даты php ...

Ответы [ 2 ]

1 голос
/ 19 июля 2011

Я думаю, что вы должны измерять время исключительно в Unix Time, потому что часовые пояса и форматы даты - проблема уровня представления. Время Unix всегда в формате UTC и это одно число, поэтому его легче передавать в коде.

Что касается проблемы «хостинг-провайдеры используют другую строку локали», просто спросите пользователя его часовой пояс и отобразите в соответствии с этим. гораздо менее подвержен ошибкам, чем пытаться угадать.

Для форматирования даты взгляните на YII's format ()

Надеюсь, что он отвечает на ваш вопрос

0 голосов
/ 20 июля 2011

Вот связанное с ним обсуждение на форуме yii

Решение на форуме yii помогло мне избежать необработанных операторов SQL NOW(), но по-прежнему создает строки дат для базы данных с поддержкой PHP date() иtime() функции, которые в противном случае возвращают целые числа.

В protected / config / main.php:

...
'params'=>array(
    'mysqlDateTimeFormat' => 'Y-m-d H:i:s', # ':u' adds microsecond precision,
...

Затем, где бы вы ни хотели поместить строку даты-времени в поле модели, используйте

$myModel->myDate = date(Yii::app()->params['mysqlDateTimeFormat']);

Очевидно, что вы можете напрямую вводить формат даты / времени в функции даты (или времени), если хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...