Spec-Zone.ru › CakePHP 3.2

Класс Time

Расширяет встроенный класс DateTime, предоставляя удобные методы и помощники для форматирования с учетом локали

Cake\Chronos\MutableDateTime
Extended by Cake\I18n\Time реализует JsonSerializable использует Cake\I18n\DateFormatTrait
Пространство имён: Cake\I18n
Расположение: I18n/Time.php

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

  • $_toStringFormat protected static
    string|array|integer

    Формат, используемый при форматировании времени с помощью Cake\I18n\Time::i18nFormat() и __toString

  • $niceFormat public static
    string|array|integer
    Формат, используемый при форматировании времени с помощью Cake\I18n\Time::nice()
  • $wordAccuracy public static
    array

    Формат, используемый при форматировании времени с помощью Time::timeAgoInWords() и разница меньше, чем Time::$wordEnd

  • $wordEnd public static
    string
    Конец относительного времени
  • $wordFormat public static
    string

    Формат, используемый при форматировании времени с помощью Cake\I18n\Time::timeAgoInWords() и разница больше, чем Cake\I18n\Time::$wordEnd

Унаследованные свойства

  • _formatters, _isDateInstance, _jsonEncodeFormat, defaultLocale

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

  • __construct() public
  • isThisMonth() public
    Возвращает true, если этот объект представляет дату текущего месяца
  • isThisWeek() public
    Возвращает true, если этот объект представляет дату текущей недели
  • isThisYear() public
    Возвращает true, если этот объект представляет дату текущего года
  • isWithinNext() public
    Возвращает true, если этот экземпляр произошёл в указанном интервале
  • listTimezones() public static
    Получить список идентификаторов часовых поясов
  • nice() public
    Возвращает отформатированную строку даты для этого объекта.
  • timeAgoInWords() public

    Возвращает относительную или отформатированную абсолютную дату в зависимости от разницы между текущим временем и этим объектом.

  • toQuarter() public
    Возвращает квартал
  • toUnixString() public
    Возвращает метку времени Unix.
  • wasWithinLast() public
    Возвращает true, если этот экземпляр произойдёт в течение указанного интервала

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

__construct()source public

__construct( $time null , $tz null )

isThisMonth()source public

isThisMonth( )

Возвращает true, если этот объект представляет дату текущего месяца

Возвращает

boolean

isThisWeek()source public

isThisWeek( )

Возвращает true, если этот объект представляет дату текущей недели

Возвращает

boolean

isThisYear()source public

isThisYear( )

Возвращает true, если этот объект представляет дату текущего года

Возвращает

boolean

isWithinNext()source public

isWithinNext( string|integer $timeInterval )

Возвращает true, если этот экземпляр произошёл в указанном интервале

Этот переопределённый метод обеспечивает обратную совместимость для целых чисел или строк с конечными пробелами. Это поведение устарело и будет удалено в будущих версиях CakePHP.

Параметры

string|integer $timeInterval

числовое значение с пробелом и типом времени. Примеры допустимых типов: 6 часов, 2 дня, 1 минута.

Возвращает

boolean

listTimezones()source public static

listTimezones( integer|string|null $filter null , string|null $country null , boolean|array $options [] )

Получить список идентификаторов часовых поясов

Параметры

integer|string|null $filter необязательно null

Регулярное выражение для фильтрации идентификатора или одно из констант класса DateTimeZone

string|null $country необязательно null

Двухбуквенный код страны ISO 3166-1. Используется только когда $filter равен DateTimeZone::PER_COUNTRY

boolean|array $options необязательно []

Если true (значение по умолчанию), группирует список идентификаторов по основному региону. В противном случае массив, содержащий ключи group, abbr, before, и after. Установка group и abbr в true сгруппирует результаты и добавит аббревиатуру часового пояса в отображаемое значение. Установка before и after позволяет настроить обёртку аббревиатуры.

Возвращает

array
Список идентификаторов часовых поясов

С версии

2.2

nice()source public

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

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

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

Параметры

string|DateTimeZone|null $timezone необязательно null

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

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

Возвращает

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

timeAgoInWords()source public

timeAgoInWords( array $options [] )

Возвращает относительную или отформатированную абсолютную дату в зависимости от разницы между текущим временем и этим объектом.

Параметры:

  • from => другой объект Time, представляющий текущее время
  • format => формат по умолчанию, если относительное время превышает период, указанный параметром end
  • accuracy => Указывает, насколько точно должна быть описана дата (массив)
    • year => Формат, если годы > 0 (по умолчанию "день")
    • month => Формат, если месяцы > 0 (по умолчанию "день")
    • week => Формат, если недели > 0 (по умолчанию "день")
    • day => Формат, если недели > 0 (по умолчанию "час")
    • hour => Формат, если часы > 0 (по умолчанию "минута")
    • minute => Формат, если минуты > 0 (по умолчанию "минута")
    • second => Формат, если секунды > 0 (по умолчанию "секунда")
  • end => Конец относительного периода
  • relativeString => Строка, совместимая с printf, при выводе относительного времени
  • absoluteString => Строка, совместимая с printf, при выводе абсолютного времени
  • timezone => Временная зона пользователя, в которой должен быть отформатирован временной отметки.

Относительные даты выглядят примерно так:

  • 3 недели, 4 дня назад
  • 15 секунд назад

Форматирование даты по умолчанию - дд/мм/гггг, например: 18/02/2009. Форматирование выполняется внутренне с помощью i18nFormat, см. метод для допустимых строк форматирования

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

ПРИМЕЧАНИЕ: Если разница составляет одну неделю или больше, то точность отображения устанавливается на день

Параметры

массив $options необязательно []
Массив параметров.

Возвращает

строка
Строка относительного времени.

toQuarter()source public

toQuarter( boolean $range false )

Возвращает квартал

Параметры

булево $range необязательно false
Диапазон.

Возвращает

целое число|массив
1, 2, 3 или 4 квартал года, или массив, если $range true

toUnixString()source public

toUnixString( )

Возвращает временную метку Unix.

Возвращает

строка
Временная метка Unix

wasWithinLast()source public

wasWithinLast( string|integer $timeInterval )

Возвращает true, если этот экземпляр произойдет в указанный интервал

Этот переопределенный метод обеспечивает обратную совместимость для целых чисел или строк с завершающими пробелами. Это поведение устарело и будет удалено в будущих версиях CakePHP.

Параметры

строка|целое число $timeInterval

Числовое значение с пробелом и типом времени. Примеры допустимых типов: 6 часов, 2 дня, 1 минута.

Возвращает

булево

Методы, используемые из Cake\I18n\DateFormatTrait

__debugInfo()source public

__debugInfo( )

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

Возвращает

массив

__toString()source public

__toString( )

_formatObject()source protected

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

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

Параметры

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

Возвращает

строка

diffFormatter()source public static

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

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

Параметры

Cake\I18n\RelativeTimeFormatter|null $formatter необязательно 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.

Примеры

$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::$defaultLocale и установить её в один из возможных форматов, принятых этой функцией.

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

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

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

Примеры

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

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

Параметры

строка|целое число|null $format необязательно null
Строка формата.
строка|DateTimeZone|null $timezone необязательно null

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

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

Возвращает

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

jsonSerialize()source public

jsonSerialize( )

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

Возвращает

строка

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]);

Параметры

string $time
Строка времени для разбора.
string|array|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');

Параметры

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

Возвращает

Cake\I18n\DateFormatTrait|null

resetToStringFormat()source public static

resetToStringFormat( )

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

setDefaultLocale()source public static

setDefaultLocale( string|null $locale null )

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

Параметры

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

setJsonEncodeFormat()source public static

setJsonEncodeFormat( string|array|integer $format )

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

Параметры

string|array|integer $format
Формат.

setToStringFormat()source public static

setToStringFormat( string|array|integer $format )

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

Параметры

string|array|integer $format
Формат.

Подробности свойств

$_toStringFormatsource

protected static string|array|integer

Формат, используемый при форматировании времени с помощью Cake\I18n\Time::i18nFormat() и __toString.

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

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

См. также

\Cake\I18n\Time::i18nFormat()
[IntlDateFormatter::SHORT, IntlDateFormatter::SHORT]

$niceFormatsource

public static string|array|integer

Формат, используемый при форматировании времени с помощью Cake\I18n\Time::nice().

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

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

См. также

\Cake\I18n\Time::nice()
[IntlDateFormatter::MEDIUM, IntlDateFormatter::SHORT]

$wordAccuracysource

public static array

Формат, используемый при форматировании времени с помощью Time::timeAgoInWords() и разница меньше Time::$wordEnd.

См. также

\Cake\I18n\Time::timeAgoInWords()
[
    'year' => "day",
    'month' => "day",
    'week' => "day",
    'day' => "hour",
    'hour' => "minute",
    'minute' => "minute",
    'second' => "second",
]

$wordEndsource

public static string

Конец описания относительного времени

См. также

\Cake\I18n\Time::timeAgoInWords()
'+1 month'

$wordFormatsource

public static string

Формат, используемый при форматировании времени с помощью Cake\I18n\Time::timeAgoInWords() и разница больше Cake\I18n\Time::$wordEnd.

См. также

\Cake\I18n\Time::timeAgoInWords()
[IntlDateFormatter::SHORT, -1]

© 2005–2016 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.
http://api.cakephp.org/3.2/class-Cake.I18n.Time.html

Spec-Zone.ru

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