date_default_timezone_set> <date_date_set
Last updated: Fri, 03 Feb 2012

date_default_timezone_get

(PHP 5 >= 5.1.0)

date_default_timezone_get Retorna a timezone (zona de tempo) padrão usada por todas as funções de data e tempo em um script

Descrição

string date_default_timezone_get ( void )

Em ordem de preferência, essa função retorna a timezone padrão por:

  • Lendo a timezone configurada utilizando a função date_default_timezone_set() (se existir)

  • Até o PHP 5.4.0 somente: Lendo a variável de ambiente TZ (se não estiver vazia)

  • Lendo o valor de date.timezone do ini (se configurada)

  • Até o PHP 5.4.0 somente: Perguntando ao sistema operacional (se suportado e permitido pelo SO). Isso usa um algoritmo que tenta adivinhar a timezone. De jeito nenhum isso funcionará corretamente em toda situação. Um aviso é mostrado quando esse estágio é alcançado. Não confie que ele será adivinhado corretamente, e configure date.timezone para a zona correta.

Se nenhuma das opções acima tiverem sucesso, a função date_default_timezone_get() retornará a timezone padrão UTC

Valor Retornado

Retorna uma string.

Histórico

Versão Descrição
5.4.0 A variável de ambiente TZ não é mais utilizada para adivinhar a timezone.
5.4.0 A timezone não é mais adivinhada de informações disponíveis através do sistema operacional já que a timezone adivinhada não é confiável.

Exemplos

Exemplo #1 Lendo a timezone padrão

<?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');
}

?>

O exemplo acima irá imprimir algo similar a:

date_default_timezone_set: Europe/London
date.timezone: Europe/London

Exemplo #2 Lendo a abreviação de uma timezone

<?php
date_default_timezone_set
('America/Los_Angeles');
echo 
date_default_timezone_get() . ' => ' date('e') . ' => ' date('T');
?>

O exemplo acima irá imprimir:

America/Los_Angeles => America/Los_Angeles => PST

Veja Também



date_default_timezone_set> <date_date_set
Last updated: Fri, 03 Feb 2012
 
User Contributed Notes
date_default_timezone_get
glennpratt+php at gmail dot com
19-May-2011 10:30
In my case, I'm not sure I can guess the correct timezone any better than PHP and it's no where near important enough to nag the user, so...

<?php
// Suppress DateTime warnings
date_default_timezone_set(@date_default_timezone_get());
?>
harmor
28-Feb-2008 05:19
If you want to get the abbrivation (3 or 4 letter), instead of the long timezone string you can use date('T') function like this:

Input:
date_default_timezone_set('America/Los_Angeles');
echo date_default_timezone_get();
echo ' => '.date('e');
echo ' => '.date('T');

Output:
America/Los_Angeles => America/Los_Angeles => PST
dohpaz at gmail dot com
20-Apr-2007 11:58
date_default_timezone_get() will still emit a warning in E_STRICT if the timezone is not set; either by date_default_timezone_set() or the ini option of date.timezone.

This is probably not a big deal, but I thought I would contribute what I found.

date_default_timezone_set> <date_date_set
Last updated: Fri, 03 Feb 2012