(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