Feb 16 2010

Symfony: памятка по форматированию даты — format_date()

Category: Symfonyingvar @ 02:07

Функция format_date() позволяет получить дату в нужном формате, чтобы ее воспользоваться необходимо подключить хелпер «Date» (DateHelper).

Подключение хелпера:

  • в файле [settings.yml] указываем нужные нам хелперы в action
    all:
      .settings:
        standard_helpers: [Date]
    
  • или вызвать функцию
    <?php
      sfProjectConfiguration::getActive()->loadHelpers('Date');
    

Вывод даты функцией format_date() зависит от текущего языка (culture) отображаемой страницы.

Не забываем указывать временную зону:

<?php
  date_default_timezone_set('Europe/Kiev');

Шаблоны отображения даты/времени (в качестве аргумента выступает один символ) для русского языка:

  • d : 16.02.10
  • D : 16 февраля 2010 г.
  • p : 16.02.2010
  • P : вторник, 16 февраля 2010 г.
  • t : 0:16
  • T : 0:16:21 EET
  • q : 0:16:21
  • f : 16 февраля 2010 г. 0:16
  • F : 16 февраля 2010 г. 0:16:21 EET
  • g : 16.02.10 0:16
  • G : 16.02.10 0:16:21 EET
  • i : 2010-02-16
  • I : 2010-02-16 00:16:21
  • m : февраля 16
  • M : февраля 16
  • r : Вт, 16 февр. 2010 00:16:21
  • R : Вт, 16 февр. 2010 00:16:21
  • s : 2010-02-16T00:16:21
  • u : 2010-02-16 00:16:21 EET
  • U : вторник 16 февраля 2010 00:16:21
  • y : 2010 февраля
  • Y : 2010 февраля

Шаблоны отображения даты/времени (в качестве аргумента выступает один символ) для английского языка:

  • d : 2/15/10
  • D : February 15, 2010
  • p : Feb 15, 2010
  • P : Monday, February 15, 2010
  • t : 11:01 PM
  • T : 11:01:31 PM GMT
  • q : 11:01:31 PM
  • f : February 15, 2010 11:01 PM
  • F : February 15, 2010 11:01:31 PM GMT
  • g : 2/15/10 11:01 PM
  • G : 2/15/10 11:01:31 PM GMT
  • i : 2010-02-15
  • I : 2010-02-15 23:01:31
  • m : February 15
  • M : February 15
  • r : Mon, 15 Feb 2010 23:01:31
  • R : Mon, 15 Feb 2010 23:01:31
  • s : 2010-02-15T23:01:31
  • u : 2010-02-15 23:01:31 GMT
  • U : Monday 15 February 2010 23:01:31
  • y : 2010 February
  • Y : 2010 February

Другие форматы шаблоны для русского языка:

  • Возвращает год
  • yy : 10
  • yyyy : 2010
  • Возвращает месяц
  • M : февраля 16
  • MM : 02
  • MMM : февр.
  • MMMM : февраля
  • Возвращает день недели
  • E : 2
  • EE : В
  • EEE : Вт
  • EEEE : вторник
  • Возвращает дату в григорианском стиле
  • G : 16.02.10 1:22:57 EET
  • Возвращает время 24 формате
  • H : 1
  • HH : 01
  • Возвращает символьный код интервала суток AM/PM,  до полудня и после
  • a : AM
  • A : A
  • Возвращает время в 12 формате
  • h : 1
  • hh : 01
  • Возвращает минуты
  • mm : 24
  • Возвращает секунды
  • ss : 18
  • Возвращает временную зону от сервера
  • z: EET
  • Возвращает день месяца
  • FF: 16
  • Возвращает номер недели в году
  • w: 07
  • Возвращает номер недели в месяце
  • W: 2

Примеры использования format_date():

<?php echo format_date($date, 'MM/dd/yyyy') ?>

<?php echo format_date(time(), 'dddd, dd MMMM yyyy', 'ru') ?>
  • MM/dd/yyyy : 02/16/2010
  • dddd, dd MMMM yyyy : вторник, 16 февраля 2010
  • dddd, dd MMMM yyyy HH:mm:ss : вторник, 16 февраля 2010 01:46:09
  • MMMM dd : февраля 16
  • yyyy’-‘MM’-‘dd’T’HH’:’mm’:’ss : 2010-02-16T01:46:09
  • HH:mm : 01:46
  • HH:mm:ss : 01:46:09
  • yyyy MMMM : 2010 февраля

Источники:

Tags: ,

4 Responses to “Symfony: памятка по форматированию даты — format_date()”

  1. Jeka says:

    Спасибо! Пригодится :)

  2. 228vit says:

    в закладки конечно :)

  3. denys281 says:

    Дякую!!!!!!!

  4. denys281 says:

    Підкажіть будь ласка , м мене є :

    echo format_date($payed, ‘dddd, dd MMMM yyyy HH:mm:ss’) ;

    Коли $payed є пустою,не містить взагалі жодного значення в мене помилка:

    Impossible to parse date «<pre>
    Doctrine_Collection
    data : Array(
    )
    </pre>» with format «yyyy-MM-dd HH:mm:ss».

    Коли користувач є супер — адміном то цієї помилки не виникає…:(

Leave a Reply to denys281