(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL intl >= 3.0.0)
IntlDateFormatter::setTimeZone -- datefmt_set_timezone — Define el formateador para el desplazamiento horario
Estilo orientado a objetos
Estilo procedimental
$formatter, IntlTimeZone|DateTimeZone|string|null $timezone): boolDefine el desplazamiento horario utilizado por el objeto IntlDateFormatter.
formatterEl formateador de recursos.
timezoneEl desplazamiento horario a utilizar con este formateador. Puede ser especificado mediante los siguientes formatos:
   null, en cuyo caso se usará la zona horaria predeterminada, tal como está especificada
   en el ajuste ini date.timezone o
   a través de la función date_default_timezone_set() y como
   es devuelto por date_default_timezone_get().
  
Un IntlTimeZone, que se usará directamente.
Un DateTimeZone. Su identificador será extraido y se creará un objeto de zona horaria de ICU; la zona horaria será proporcionada por la base de datos de ICU, no por la de PHP.
   Un string, que debería ser un identificador de zona horaria de ICU válido.
   Véase IntlTimeZone::createTimeZoneIDEnumeration(). Los índices
   puros como "GMT+08:30" también se aceptan.
  
| Versión | Descripción | 
|---|---|
| 8.3.0 | Esta función devuelve ahora trueen caso de éxito; previamente devolvíanull. | 
Ejemplo #1 Ejemplo con 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());El ejemplo anterior mostrará:
NULL
    Europe/Amsterdam
IntlTimeZone
    Europe/Lisbon
DateTimeZone
    Europe/Paris
String
    Europe/Rome
IntlTimeZone Object
(
    [valid] => 1
    [id] => GMT+00:30
    [rawOffset] => 1800000
    [currentOffset] => 1800000
)
