ConFoo 2025

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 predefinidas

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

IntlDateFormatter::NONE int
Não incluir este elemento
IntlDateFormatter::FULL int
Estilo completamente especificado (Tuesday, April 12, 1952 AD ou 3:30:42pm PST)
IntlDateFormatter::LONG int
Estilo longo (January 12, 1952 ou 3:30:32pm)
IntlDateFormatter::MEDIUM int
Estilo médio (Jan 12, 1952)
IntlDateFormatter::SHORT int
O estilo mais abreviado, apenas dados essenciais (12/13/52 ou 3:30pm)
IntlDateFormatter::RELATIVE_FULL int
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 int
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 int
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 int
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 int
Calendário Não Gregoriano
IntlDateFormatter::GREGORIAN int
Calendário Gregoriano

Registro de Alterações

Versão Descrição
8.4.0 As constantes de classe agora são tipadas.

Índice

adicione uma nota

Notas Enviadas por Usuários (em inglês)

Não há notas de usuários para esta página.
To Top