(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL intl >= 3.0.0)
IntlDateFormatter::setTimeZone -- datefmt_set_timezone — Define o fuso horário do formatador
Estilo orientado a objetos
Estilo procedural
$formatter
, IntlTimeZone|DateTimeZone|string|null $timezone
): boolDefine o fuso horário usado para o objeto IntlDateFormatter.
formatter
O recurso do formatador.
timezone
O fuso horário a ser utilizado para este formatador. Pode ser especificado nas formas a seguir:
null
, neste caso o fuso horário padrão será usado, como especificado na
configuração ini date.timezone ou
através da função date_default_timezone_set() e como
retornado por date_default_timezone_get().
Um objeto IntlTimeZone, que será usado diretamente.
Um objeto DateTimeZone. Seu identificador será extraído e um objeto de fuso horário ICU será criado; o fuso horário será apoiado pelo banco de dados da ICU, não pelo do PHP.
Uma string, que deve ser um identificador de fuso horário ICU válido.
Consulte a função IntlTimeZone::createTimeZoneIDEnumeration(). Deslocamentos
puros como "GMT+08:30"
também são aceitos.
Retorna true
em caso de sucesso ou false
em caso de falha.
Versão | Descrição |
---|---|
8.3.0 |
Esta função agora retorna true em caso de sucesso; anteriormente, retornava null .
|
Exemplo #1 Exemplos de IntlDateFormatter::setTimeZone()
<?php
ini_set('date.timezone', 'Europe/Amsterdam');
$formatter = IntlDateFormatter::create(NULL, NULL, NULL, "UTC");
$formatter->setTimeZone(NULL);
echo "NULL\n ", $formatter->getTimeZone()->getId(), "\n";
$formatter->setTimeZone(IntlTimeZone::createTimeZone('Europe/Lisbon'));
echo "IntlTimeZone\n ", $formatter->getTimeZone()->getId(), "\n";
$formatter->setTimeZone(new DateTimeZone('Europe/Paris'));
echo "DateTimeZone\n ", $formatter->getTimeZone()->getId(), "\n";
$formatter->setTimeZone('Europe/Rome');
echo "String\n ", $formatter->getTimeZone()->getId(), "\n";
$formatter->setTimeZone('GMT+00:30');
print_r($formatter->getTimeZone());
O exemplo acima produzirá:
NULL Europe/Amsterdam IntlTimeZone Europe/Lisbon DateTimeZone Europe/Paris String Europe/Rome IntlTimeZone Object ( [valid] => 1 [id] => GMT+00:30 [rawOffset] => 1800000 [currentOffset] => 1800000 )