date_default_timezone_get

(PHP 5 >= 5.1.0, PHP 7)

date_default_timezone_get Возвращает временную зону, используемой по умолчанию всеми функциями даты/времени в скрипте

Описание

date_default_timezone_get ( void ) : string

Функция пытается получить временную зону по умолчанию по порядку следующими способами:

  • Чтение настройки временной зоны с помощью функции 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

Смотрите также