A classe IntlDateFormatter

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)

Introdução

O formatador de datas é uma classe concreta que habilita formatação/interpretação dependetes de localidade de datas usando strings de padrões e/ou padrões já existentes.

Esta classe representa a funcionalidade de formatação de datas da ICU. Permite aos usuários apresentar datas em formato dependente de localidade ou converter strings em valores de datas do PHP usando strings de padrões e/ou padrões já existentes.

Resumo da classe

class IntlDateFormatter {
/* Constantes */
public const int FULL;
public const int LONG;
public const int MEDIUM;
public const int SHORT;
public const int NONE;
public const int RELATIVE_FULL;
public const int RELATIVE_LONG;
public const int RELATIVE_MEDIUM;
public const int RELATIVE_SHORT;
public const int GREGORIAN;
public const int TRADITIONAL;
/* Métodos */
public __construct(
    ?string $locale,
    int $dateType = IntlDateFormatter::FULL,
    int $timeType = IntlDateFormatter::FULL,
    IntlTimeZone|DateTimeZone|string|null $timezone = null,
    IntlCalendar|int|null $calendar = null,
    ?string $pattern = null
)
public static create(
    ?string $locale,
    int $dateType = IntlDateFormatter::FULL,
    int $timeType = IntlDateFormatter::FULL,
    IntlTimeZone|DateTimeZone|string|null $timezone = null,
    IntlCalendar|int|null $calendar = null,
    ?string $pattern = null
): ?IntlDateFormatter
public static formatObject(IntlCalendar|DateTimeInterface $datetime, array|int|string|null $format = null, ?string $locale = null): string|false
public getErrorCode(): int
public isLenient(): bool
public localtime(string $string, int &$offset = null): array|false
public parse(string $string, int &$offset = null): int|float|false
public setCalendar(IntlCalendar|int|null $calendar): bool
public setLenient(bool $lenient): void
public setPattern(string $pattern): bool
}

Constantes pré-definidas

Estas constantes são usadas para especificar diferentes formatos nos construtores para DateType e TimeType.

IntlDateFormatter::NONE
Não incluir este elemento
IntlDateFormatter::FULL
Estilo completamente especificado (Tuesday, April 12, 1952 AD ou 3:30:42pm PST)
IntlDateFormatter::LONG
Estilo longo (January 12, 1952 ou 3:30:32pm)
IntlDateFormatter::MEDIUM
Estilo médio (Jan 12, 1952)
IntlDateFormatter::SHORT
O estilo mais abreviado, apenas dados essenciais (12/13/52 ou 3:30pm)
IntlDateFormatter::RELATIVE_FULL
O mesmo que IntlDateFormatter::FULL, porém ontem, hoje e amanhã são mostrados como yesterday, today, e tomorrow, respectivamente. Disponível a partir do PHP 8.0.0, somente para dateType.
IntlDateFormatter::RELATIVE_LONG
O mesmo que IntlDateFormatter::LONG, porém ontem, hoje e amanhã são mostrados como yesterday, today, e tomorrow, respectivamente. Disponível a partir do PHP 8.0.0, somente para dateType.
IntlDateFormatter::RELATIVE_MEDIUM
O mesmo que IntlDateFormatter::MEDIUM, porém ontem, hoje e amanhã são mostrados como yesterday, today, e tomorrow, respectivamente. Disponível a partir do PHP 8.0.0, somente para dateType.
IntlDateFormatter::RELATIVE_SHORT
O mesmo que IntlDateFormatter::SHORT, porém ontem, hoje e amanhã são mostrados como yesterday, today, e tomorrow, respectivamente. Disponível a partir do PHP 8.0.0, somente para dateType.

As constantes inteiras a seguir são usadas para especificar o calendário. Estes calendários são todos baseados diretamente no calendário gregoriano. Calendários não gregorianos precisam ser especificados na localidade. Exemplos podem incluir locale="hi@calendar=BUDDHIST".

IntlDateFormatter::TRADITIONAL
Calendário Não Gregoriano
IntlDateFormatter::GREGORIAN
Calendário Gregoriano

Table of Contents