Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/09/2011, 10h05   #1
Membre du Club
 
Inscription : février 2009
Messages : 330
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 330
Points : 56
Points : 56
Par défaut Convertir Date UTC en GMT

Bonjour à tous,

Je récupère d'une base de données MySQL une date et heure que je veux afficher sur mon site. Cette date-heure est au format UTC.
Et donc en hiver j'ai une heure de décalage, et en été deux heures (si il est 12h en réalité, il m'affichera 10h)

Je voudrais savoir comment corriger cette date-heure, afin d'avoir l'heure réelle (avec prise en compte de heure été ou hiver)

Faut-il créer une fonction utilisateur ou y-a-t'il dans php une fonction capable de faire ceci ?

Merci pour votre aide.
Mikael
mikael2235 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2011, 12h17   #2
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 661
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 661
Points : 5 388
Points : 5 388
Si tu utilises PHP 5.3, tu as DateTime::createFromFormat qui peut prendre un fuseau horaire en paramètre
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2011, 06h30   #3
Membre du Club
 
Inscription : février 2009
Messages : 330
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 330
Points : 56
Points : 56
Salut,

Si j'ai bien compris, cette fonction va me permettre d'afficher le décalage entre UTC et GMT par exemple (+02:00 GMT)

Mais elle ne va pas me recalculer l'heure ?

Merci
mikael2235 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2011, 09h28   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 131
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 131
Points : 8 491
Points : 8 491
test tu verras, mais utilise plutôt DateTime direct
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2011, 09h51   #5
Membre du Club
 
Inscription : février 2009
Messages : 330
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 330
Points : 56
Points : 56
j'ai ajouté P et il m'ajoute à la date +02:00
Mais ne me change pas l'heure.

Je vais essayer DateTime
mikael2235 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2011, 10h18   #6
Membre du Club
 
Inscription : février 2009
Messages : 330
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 330
Points : 56
Points : 56
J'ai réussi en faisant ceci
Code :
1
2
3
4
 
$date = new DateTime($datep);
$date->modify('+2 hour');
echo $date->format('Y-m-d H:i:s');
Mais ce n'est pas trés propre et ne prends pas en compte les changements d'heure.

Je ne vois pas quoi utiliser autrement.
mikael2235 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2011, 10h48   #7
Modérateur
 
Inscription : septembre 2010
Messages : 7 131
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 131
Points : 8 491
Points : 8 491
t'as pas vu le setTimezone dans la doc ?
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h25.


 
 
 
 
Partenaires

Hébergement Web