downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

date_default_timezone_set> <date_date_set
[edit] Last updated: Fri, 14 Jun 2013

view this page in

date_default_timezone_get

(PHP 5 >= 5.1.0)

date_default_timezone_get Récupère le décalage horaire par défaut utilisé par toutes les fonctions date/heure d'un script

Description

string date_default_timezone_get ( void )

Cette fonction retourne le décalage horaire en suivant l'ordre de préférences suivant :

  • Lecture du décalage horaire défini en utilisant la fonction date_default_timezone_set() (si elle existe)

  • Avant PHP 5.4.0 uniquement : Lecture de la variable d'environnement TZ (si elle n'est pas vide)

  • Lecture de la valeur de l'option de configuration date.timezone (si elle est définie)

  • Avant PHP 5.4.0 uniquement : Interrogation du système d'exploitation (si le système le supporte et l'autorise). Cette interrogation utilise un algorithme qui tente de deviner le décalage horaire. Aussi, le résultat peut ne pas être attendu dans certaine situation. Une alerte est affichée lorsque cette étape est atteinte. Inutile de la rapporter afin qu'elle soit corrigée, mais définissez plutôt date.timezone de façon plus correcte.

Si tout ce qui précède échoue, date_default_timezone_get() retournera le décalage horaire par défaut de UTC.

Valeurs de retour

Retourne une chaîne de caractères.

Historique

Version Description
5.4.0 La variable d'environnement TZ n'est plus utilisée pour deviner le décalage horaire.
5.4.0 Le décalage horaire n'est plus deviné depuis les informations disponibles via le système d'exploitation.

Exemples

Exemple #1 Récupération du décalage horaire par défaut

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

?>

L'exemple ci-dessus va afficher quelque chose de similaire à :

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

Exemple #2 Récupération de l'abréviation d'un décalage horaire

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

L'exemple ci-dessus va afficher :

America/Los_Angeles => America/Los_Angeles => PST

Voir aussi



date_default_timezone_set> <date_date_set
[edit] Last updated: Fri, 14 Jun 2013
 
add a note add a note User Contributed Notes date_default_timezone_get - [4 notes]
up
1
dohpaz at gmail dot com
6 years ago
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.
up
4
glennpratt+php at gmail dot com
2 years ago
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());
?>
up
0
Damien dot Garrido dot Work at gmail dot com
11 months ago
To get offset string from offset:

<?php

function timezone_offset_string( $offset )
{
        return
sprintf( "%s%02d:%02d", ( $offset >= 0 ) ? '+' : '-', abs( $offset / 3600 ), abs( $offset % 3600 ) );
}

$offset = timezone_offset_get( new DateTimeZone( 'Pacific/Kiritimati' ), new DateTime() );
echo
"offset: " . timezone_offset_string( $offset ) . "\n";

$offset = timezone_offset_get( new DateTimeZone( 'Pacific/Tahiti' ), new DateTime() );
echo
"offset: " . timezone_offset_string( $offset ) . "\n";
?>

Output:
offset: +14:00
offset: -10:00
up
0
harmor
5 years ago
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

 
show source | credits | sitemap | contact | advertising | mirror sites