date_default_timezone_get
(PHP 5 >= 5.1.0, PHP 7)
date_default_timezone_get — Возвращает временную зону, используемой по умолчанию всеми функциями даты/времени в скрипте
Описание
Функция пытается получить временную зону по умолчанию по порядку следующими способами:
-
Чтение настройки временной зоны с помощью функции date_default_timezone_set() (если применимо)
-
Только до версии PHP 5.4.0: чтение переменной окружения TZ (если она не пуста)
-
Чтение значения ini настройки date.timezone (если задана)
-
Только до версии PHP 5.4.0: опрос операционной системы (если поддерживается и разрешено ОС). При этом используется механизм угадывания временной зоны. Этот механизм не всегда корректно работает. Если используется этот метод (все предыдущие не дали результата), будет выдано предупреждение. Не стоит полагаться на результат, полученный этим способом, вместо этого лучше задать в параметрах временной зоны date.timezone правильное значение.
Если ни один из способов не принес результата, date_default_timezone_get() вернет временную зону UTC.
Возвращаемые значения
Возвращает string.
Список изменений
Версия | Описание |
---|---|
5.4.0 | Переменная окружения TZ больше не используется при угадывании временной зоны. |
5.4.0 | Временная зона больше не угадывается с помощью информации, полученной из операционной системы, так как данный метод нестабилен и на него нельзя полагаться. |
Примеры
Пример #1 Получение временной зоны по умолчанию
<?php
date_default_timezone_set('Europe/London');
if (date_default_timezone_get()) {
echo 'date_default_timezone_set: ' . date_default_timezone_get() . '<br />';
}
if (ini_get('date.timezone')) {
echo 'date.timezone: ' . ini_get('date.timezone');
}
?>
Результатом выполнения данного примера будет что-то подобное:
date_default_timezone_set: Europe/London date.timezone: Europe/London
Пример #2 Получение аббревиатуры временной зоны
<?php
date_default_timezone_set('America/Los_Angeles');
echo date_default_timezone_get() . ' => ' . date('e') . ' => ' . date('T');
?>
Результат выполнения данного примера:
America/Los_Angeles => America/Los_Angeles => PST
Смотрите также
- date_default_timezone_set() - Устанавливает временную зону по умолчанию для всех функций даты/времени в скрипте
- Список поддерживаемых временных зон
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения для работы с датой и временем
- Дата и Время
- checkdate
- date_add
- date_create_from_format
- date_create_immutable_from_format
- date_create_immutable
- date_create
- date_date_set
- date_default_timezone_get
- date_default_timezone_set
- date_diff
- date_format
- date_get_last_errors
- date_interval_create_from_date_string
- date_interval_format
- date_isodate_set
- date_modify
- date_offset_get
- date_parse_from_format
- date_parse
- date_sub
- date_sun_info
- date_sunrise
- date_sunset
- date_time_set
- date_timestamp_get
- date_timestamp_set
- date_timezone_get
- date_timezone_set
- date
- getdate
- gettimeofday
- gmdate
- gmmktime
- gmstrftime
- idate
- localtime
- microtime
- mktime
- strftime
- strptime
- strtotime
- time
- timezone_abbreviations_list
- timezone_identifiers_list
- timezone_location_get
- timezone_name_from_abbr
- timezone_name_get
- timezone_offset_get
- timezone_open
- timezone_transitions_get
- timezone_version_get
Коментарии
If you are upgrading an ancient script which was written pre PHP 5.4 please be aware that the configured server timezone was used to guess the timezone; this was changed to UTC with PHP 5.4!