Spec-Zone.ru › CakePHP 3.8

Трейт DateFormatTrait

Трейт для методов форматирования дат, используемых как в Time, так и в Date.

Этот трейт ожидает, что реализующий класс определит static::$_toStringFormat.

Прямые пользователи

  • Cake\I18n\Date
  • Cake\I18n\FrozenDate
  • Cake\I18n\FrozenTime
  • Cake\I18n\Time
Пространство имён: Cake\I18n
Расположение: I18n/DateFormatTrait.php

Краткое описание свойств

  • $_formatters protected static
    IntlDateFormatter[]
    Кэш форматировщиков дат в памяти
  • $_isDateInstance protected static
    boolean
    Кэширует, является ли класс подклассом Date или MutableDate
  • $_jsonEncodeFormat protected static
    string|array|integer
    Формат для преобразования объекта в json
  • $defaultLocale public static
    string
    Локаль по умолчанию для отображения отформатированных строк дат.

Краткое описание методов

  • __debugInfo() public
    Возвращает данные, которые должны быть отображены при отладке этого объекта
  • __toString() public
  • _formatObject() protected

    Возвращает переведённую и локализованную строку даты. Реализует IntlDateFormatter::formatObject() в PHP 5.5+

  • diffFormatter() public static
    Получает экземпляр форматировщика разницы или перезаписывает текущий.
  • getDefaultLocale() public static
    Получает локаль по умолчанию.
  • i18nFormat() public

    Возвращает отформатированную строку для этого объекта времени, используя предпочтительный формат и язык для указанной локали.

  • jsonSerialize() public
    Возвращает строку, которая должна быть сериализована при преобразовании этого объекта в json
  • nice() public
    Возвращает красиво отформатированную строку даты для этого объекта.
  • parseDate() public static

    Возвращает новый объект Time после анализа переданной строки $date, основанной на переданном или настроенном формате даты и времени. Этот метод зависит от локали, любая строка, переданная в эту функцию, будет интерпретироваться как строка, зависящая от локали.

  • parseDateTime() public static

    Возвращает новый объект Time после анализа переданной строки времени, основанной на переданном или настроенном формате даты и времени. Этот метод зависит от локали, любая строка, переданная в эту функцию, будет интерпретироваться как строка, зависящая от локали.

  • parseTime() public static

    Возвращает новый объект Time после анализа переданной строки $time, основанной на переданном или настроенном формате даты и времени. Этот метод зависит от локали, любая строка, переданная в эту функцию, будет интерпретироваться как строка, зависящая от локали.

  • resetToStringFormat() public static

    Сбрасывает формат, используемый по умолчанию при преобразовании экземпляра этого типа в строку

  • setDefaultLocale() public static
    Устанавливает локаль по умолчанию.
  • setJsonEncodeFormat() public static
    Устанавливает формат по умолчанию, используемый при преобразовании этого объекта в json
  • setToStringFormat() public static
    Устанавливает формат по умолчанию, используемый при преобразовании экземпляров этого типа в строку

Подробное описание методов

__debugInfo()source public

__debugInfo( )

Возвращает данные, которые должны быть отображены при отладке этого объекта

Возвращает

массив

__toString()source public

__toString( )

_formatObject()source protected

_formatObject( DateTime $date , string|integer|array $format , string|null $locale )

Возвращает переведённую и локализованную строку даты. Реализует IntlDateFormatter::formatObject() в PHP 5.5+

Параметры

DateTime $date
Дата.
строка|целое число|массив $format
Формат.
строка|null $locale
Имя локали, в которой должна отображаться дата.

Возвращает

строка

diffFormatter()source public static

diffFormatter( Cake\I18n\RelativeTimeFormatter|null $formatter = null )

Получает экземпляр форматировщика разницы или перезаписывает текущий.

Параметры

Cake\I18n\RelativeTimeFormatter|null $formatter optional null
Экземпляр форматировщика при установке.

Возвращает

Cake\I18n\RelativeTimeFormatter
Экземпляр форматировщика.

getDefaultLocale()source public static

getDefaultLocale( )

Получает локаль по умолчанию.

Возвращает

строка|null
Строка локали по умолчанию или null.

i18nFormat()source public

i18nFormat( string|integer|null $format = null , string|DateTimeZone|null $timezone = null , string|null $locale = null )

Возвращает отформатированную строку для этого объекта времени, используя предпочтительный формат и язык для указанной локали.

Можно указать желаемый формат для отображаемой строки. Вы можете передать IntlDateFormatter константы в качестве первого аргумента этой функции или передать полную строку форматирования даты ICU, как указано в следующих ресурсах: http://www.icu-project.org/apiref/icu4c/classSimpleDateFormat.html#details.

Дополнительные IntlDateFormatter константы и строки форматирования даты, вы можете использовать Time::UNIX_TIMESTAMP_FORMAT для получения метки времени Unix

Примеры

$time = new Time('2014-04-20 22:10');
$time->i18nFormat(); // outputs '4/20/14, 10:10 PM' for the en-US locale
$time->i18nFormat(\IntlDateFormatter::FULL); // Use the full date and time format
$time->i18nFormat([\IntlDateFormatter::FULL, \IntlDateFormatter::SHORT]); // Use full date but short time format
$time->i18nFormat('yyyy-MM-dd HH:mm:ss'); // outputs '2014-04-20 22:10'
$time->i18nFormat(Time::UNIX_TIMESTAMP_FORMAT); // outputs '1398031800'

Вы можете контролировать формат по умолчанию через Time::setToStringFormat().

Вы можете узнать о доступных константах IntlDateFormatter на https://secure.php.net/manual/en/class.intldateformatter.php

Если вам нужно отобразить дату в другом часовом поясе, чем тот, который используется для этого объекта Time, не изменяя его внутреннее состояние, вы можете передать строку часового пояса или объект DateTimeZone в качестве второго параметра.

Наконец, если вам нужно использовать другую локаль для отображения этого объекта времени, передайте строку локали в качестве третьего параметра этой функции.

Примеры

$time = new Time('2014-04-20 22:10');
$time->i18nFormat(null, null, 'de-DE');
$time->i18nFormat(\IntlDateFormatter::FULL, 'Europe/Berlin', 'de-DE');

Вы можете контролировать локаль по умолчанию через Time::setDefaultLocale(). Если она пуста, значение будет взято из конфигурации ini intl.default_locale.

Параметры

строка|целое число|null $format optional null
Строка формата.
строка|DateTimeZone|null $timezone optional null

Строка часового пояса или объект DateTimeZone, в котором будет отображаться дата. Внутренний часовой пояс этого объекта не изменится.

строка|null $locale optional null
Имя локали, в которой должна отображаться дата (например, pt-BR)

Возвращает

строка|целое число
Отформатированная и переведённая строка даты

jsonSerialize()source public

jsonSerialize( )

Возвращает строку, которая должна быть сериализована при преобразовании этого объекта в json

Возвращает

строка
END_OF_DOCUMENT_MARKER

nice()source public

nice( string|DateTimeZone|null $timezone = null , string|null $locale = null )

Возвращает строку с отформатированной датой для этого объекта.

Используемый формат хранится в статическом свойстве Time::niceFormat.

Параметры

строка|DateTimeZone|null $timezone необязательно null

Строка часового пояса или объект DateTimeZone, в котором будет отображаться дата. Часовой пояс, сохранённый для этого объекта, не будет изменён.

строка|null $locale необязательно null
Имя локали, в которой должна быть отображена дата (например, pt-BR).

Возвращает

строка
Отформатированная строка даты

parseDate()source public static

parseDate( string $date , string|integer|null $format = null )

Возвращает новый объект Time после парсинга предоставленной строки $date, основываясь на переданном или настроенном формате даты и времени. Этот метод зависит от локали, любая строка, переданная в эту функцию, будет интерпретирована как строка, зависящая от локали.

Если $format не предоставлен, будет использован формат wordFormat.

Если невозможно обработать предоставленное время, возвращается null.

Пример:

$time = Time::parseDate('10/13/2013');
 $time = Time::parseDate('13 Oct, 2013', 'dd MMM, y');
 $time = Time::parseDate('13 Oct, 2013', IntlDateFormatter::SHORT);

Параметры

строка $date
Строка даты для парсинга.
строка|целое число|null $format необязательно null
Любой формат, принимаемый IntlDateFormatter.

Возвращает

Cake\I18n\DateFormatTrait|null

parseDateTime()source public static

parseDateTime( string $time , string|array|null $format = null )

Возвращает новый объект Time после парсинга предоставленной строки времени, основываясь на переданном или настроенном формате даты и времени. Этот метод зависит от локали, любая строка, переданная в эту функцию, будет интерпретирована как строка, зависящая от локали.

Если $format не предоставлен, будет использован формат toString.

Если невозможно обработать предоставленное время, возвращается null.

Пример:

$time = Time::parseDateTime('10/13/2013 12:54am');
 $time = Time::parseDateTime('13 Oct, 2013 13:54', 'dd MMM, y H:mm');
 $time = Time::parseDateTime('10/10/2015', [IntlDateFormatter::SHORT, -1]);

Параметры

строка $time
Строка времени для парсинга.
строка|массив|null $format необязательно null
Любой формат, принимаемый IntlDateFormatter.

Возвращает

Cake\I18n\DateFormatTrait|null

parseTime()source public static

parseTime( string $time , string|integer|null $format = null )

Возвращает новый объект Time после парсинга предоставленной строки $time, основываясь на переданном или настроенном формате даты и времени. Этот метод зависит от локали, любая строка, переданная в эту функцию, будет интерпретирована как строка, зависящая от локали.

Если $format не предоставлен, будет использован формат IntlDateFormatter::SHORT.

Если невозможно обработать предоставленное время, возвращается null.

Пример:

$time = Time::parseTime('11:23pm');

Параметры

строка $time
Строка времени для парсинга.
строка|целое число|null $format необязательно null
Любой формат, принимаемый IntlDateFormatter.

Возвращает

Cake\I18n\DateFormatTrait|null

resetToStringFormat()source public static

resetToStringFormat( )

Сбрасывает формат на значение по умолчанию при преобразовании экземпляра этого типа в строку

setDefaultLocale()source public static

setDefaultLocale( string|null $locale = null )

Устанавливает локаль по умолчанию.

Параметры

строка|null $locale необязательно null
Строка локали по умолчанию или null.

setJsonEncodeFormat()source public static

setJsonEncodeFormat( string|array|integer $format )

Устанавливает формат по умолчанию, используемый при преобразовании этого объекта в json

Формат должен быть либо константами форматирования из IntlDateFormatter (как описано в (https://secure.php.net/manual/en/class.intldateformatter.php)), либо шаблоном, как указано в (http://www.icu-project.org/apiref/icu4c/classSimpleDateFormat.html#details)

Можно указать массив из 2 констант. В этом случае первая позиция будет использоваться для форматирования части даты объекта, а вторая - для форматирования части времени.

Параметры

строка|массив|целое число $format
Формат.

См. также

\Cake\I18n\Time::i18nFormat()

setToStringFormat()source public static

setToStringFormat( string|array|integer $format )

Устанавливает формат по умолчанию, используемый при преобразовании экземпляров этого типа в строку

Формат должен быть либо константами форматирования из IntlDateFormatter (как описано в (https://secure.php.net/manual/en/class.intldateformatter.php)), либо шаблоном, как указано в (http://www.icu-project.org/apiref/icu4c/classSimpleDateFormat.html#details)

Можно указать массив из 2 констант. В этом случае первая позиция будет использоваться для форматирования части даты объекта, а вторая - для форматирования части времени.

Параметры

строка|массив|целое число $format
Формат.

Подробное описание свойств

$_formatterssource

protected static IntlDateFormatter[]

Кэширование форматировщиков дат

[]

$_isDateInstancesource

protected static boolean

Кэширует, является ли этот класс подклассом Date или MutableDate

$_jsonEncodeFormatsource

protected static строка|массив|целое число

Формат, используемый при преобразовании объекта в json

Формат должен быть либо константами форматирования из IntlDateFormatter (как описано в (https://secure.php.net/manual/en/class.intldateformatter.php)), либо шаблоном, как указано в (http://www.icu-project.org/apiref/icu4c/classSimpleDateFormat.html#details)

Можно указать массив из 2 констант. В этом случае первая позиция будет использоваться для форматирования части даты объекта, а вторая - для форматирования части времени.

См. также

\Cake\I18n\Time::i18nFormat()
"yyyy-MM-dd'T'HH':'mm':'ssxxx"

$defaultLocalesource

public static строка

Локаль по умолчанию для отображения отформатированных строк даты.

Устарело

3.2.9 Используйте static::setDefaultLocale() и static::getDefaultLocale() вместо этого.

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.8/class-Cake.I18n.DateFormatTrait.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API