IntlDateFormatter::setTimeZone
PHP function
Edit on GitHub ✎
(PHP 5 >= 5.5.0, PHP 7, PHP 8, PECL intl >= 3.0.0)
Sets formatterʼs timezone
Description
Oop
IntlDateFormatter::setTimeZone(IntlTimeZone|DateTimeZone|string|null $timezone): bool
Procedural
datefmt_set_timezone(IntlDateFormatter $formatter, IntlTimeZone|DateTimeZone|string|null $timezone): bool
Sets the timezone used for the IntlDateFormatter. object.
Parameters
formatterThe formatter resource.
timezoneThe timezone to use for this formatter. This can be specified in the following forms:
Inctimezoneparam
Return Values
Success
Changelog
| Version | Description |
|---|---|
| 8.3.0 | This function now returns true on success; previously it returns null. |
Examples
IntlDateFormatter::setTimeZone() examples
php
<?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());The above example will output:
output
NULL
Europe/Amsterdam
IntlTimeZone
Europe/Lisbon
DateTimeZone
Europe/Paris
String
Europe/Rome
IntlTimeZone Object
(
[valid] => 1
[id] => GMT+00:30
[rawOffset] => 1800000
[currentOffset] => 1800000
)