Problème avec l'heure en PHP

Fermé
Gariig - Modifié par pijaku le 2/12/2013 à 14:51
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 - 20 mai 2016 à 01:37
Bonjour,

J ai ecrit un script tout simple qui affiche l heure actuelle en PHP. Mais ça affiche l heure avec 2h en moins !!!

Voici mon script (issu d'un livre)

$heure=date("H");
$minute=date("i");
echo "Il est $heure h $minute !";


Donc par exemple si il est 19h, ce script m'affiche 17h !!!

Pourquoi ??

Merci

15 réponses

[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 1 083
Modifié par [Dal] le 18/03/2013 à 15:41
Depuis Php 5.1.0, on peut faire comme cela dans son code (si on ne maîtrise pas le paramétrage de php.ini) :

date_default_timezone_set('Europe/Paris');

Dal
51
On apprend de nos erreurs!
Vérifier que votre fonction n'est pas commentée dans le fichier de configuration de php.
;date.timezone =Europe/Paris
Otez le point virgule (;) du commentaire.
ça fonctionne :)
0
junior > Synopsis
19 mai 2016 à 15:02
et pour les personne qui vivre en amerique latine ont mais quoi a la place utc
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650 > junior
20 mai 2016 à 01:37
0
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
16 sept. 2009 à 21:02
Dans le php.ini, il faut modifier la directive "date.timezone" (utilise la fonction de recherche de ton éditeur de texte) et mettre l'identifiant du fuseau horaire dans lequel tu te trouve (cf. ici).
Exemple :
date.timezone = "Europe/Brussels"

Faut pas oublier de décommenter la ligne.
38
ou "Europe/Paris"
0
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
2 août 2010 à 15:40
Oui ou Europe/Madrid, Europe/Amsterdam, Europe/Rome, ...
0
Merci, ton explication est très claire et ma tout de suite montré comment faire :)
0
cool gars c'etait claire et nette. Merci
0
c'est franck desoler d'utiliser ton speudo "avion-f16"
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
16 sept. 2009 à 21:32
avion F16 a raison, l'heure que tu recupere en php n'est pas l'heure de ton pc , mais celle du serveur, modifie ton php ini, en local c'est simple ,mais en ligne si tu n'a pas acces au php.ini utilise
date_default_timezone_set https://www.php.net/manual/fr/function.date-default-timezone-set.php
5
ça y est ça marche !!!!! J ai remplacé :

date.timezone = UTC

par

date.timezone = "Europe/Brussels"

et la il est bien 22h40 quand je génère le script sur wamp c est trop cool !

Merci
5

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
18 janv. 2011 à 10:39
Bonjour à tous,

J'ai beau changé le fichier php.ini, cela ne change rien je retrouve toujours l'heure actuelle -1.
Je travail sous wampserver, le fichier php.ini est t'il bien celui se trouvant à l'adresse C:\wamp\bin\php\php5.3.0\php.ini ?

voici les lignes où j'apporte les modifications :
; Defines the default timezone used by the date functions
; https://www.php.net/manual/en/datetime.configuration.php#ini.date.timezone
date.timezone = UTC

que je remplace par
; Defines the default timezone used by the date functions
; https://www.php.net/manual/en/datetime.configuration.php#ini.date.timezone
date.timezone = "Europe/Paris"

Merci d'avance.

Necro27
2
Bloubibi Messages postés 1 Date d'inscription samedi 7 septembre 2013 Statut Membre Dernière intervention 7 septembre 2013
7 sept. 2013 à 12:27
Bonjour.

Le fichier php.ini utilisé par wamp est le suivant :
C:\wamp\bin\apache\apachex.x.xx(votre version apache)\bin

Le plus simple est de le modifier en ouvrant le fichier php.ini depuis le menu php du programme : cad en cliquant gauche sur l'icone Wamp du bureau, menu php.
0
Aquall Messages postés 36 Date d'inscription mardi 31 mai 2011 Statut Membre Dernière intervention 1 mars 2012 2
9 juin 2011 à 14:42
Et si je vous dis que vous vous prennez la tete pour rien pour l'heure?

https://www.php.net/manual/fr/function.time.php

La fonction time() vous retourne l'heure actuelle...

Exemple:

$now=time();
$heure=date(H:i,$now);
echo "Il est actuellement:".$heure."<br>";


En espérant vous avoir aidé. PHP manuel est la pour vous aider aussi. Il est très bien fait et on y trouve pas mal d'aide.
1
Et si je dis que tu dis n'importe quoi? Car si le serveur est au canada l'heure aura 6 heures de décalage avec la France.
1
je l ai simplement testé en local avec WAMP et j ai 2h de retard...

je sais pas comment réglé l heure de wamp moi...
0
Mon horloge de pc n'a aucun probleme elle affiche l heure normale

C est quand je fais ce script sur WAMP:

$heure=date("H");
$minute=date("i");
echo "Il est $heure h $minute !";

Que ça m affiche 18h16 au lieu de 20h16 (heure de mon pc)

Je comprend pas pourquoi
0
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
16 sept. 2009 à 20:50
Je viens de tester comme ça et j'ai le même problème :)
Je vais regarder à ça.
PS : Je n'utilise pas Wamp mais Apache + PHP + MySQL installés séparemments (logique sur Linux et avec un serveur en production).
0
Re

Oui c est peut etre le script qui est pas bon ...

J ai tiré ce script d'un livre "PHP pour debutants"

Et des fois ya des script qui marche mal... meme si c est un tres bon livre avec lequel je m initie a PHP.

Je doute que ça soi WAMP qui deconne car wamp c est quand meme la plateforme que tout le monde utilise pour developper en php.

Don merci de m proposer un petit script qui fonctionne pour afficher l heure !! ça doit etre tout bete :) Merci
0
Ok je vais modifier mon fichier php.ini et je te dirai si ça marche !!

La je v manger a toute !! Et merci encore !!!!
0
celine_dion_blue Messages postés 1 Date d'inscription lundi 5 avril 2010 Statut Membre Dernière intervention 5 avril 2010
5 avril 2010 à 22:06
Pour moi ça marche, je pense que je trouve la solution. il suffit de régler l'heure et surtout de régler de fusion horaire pour votre pays et après régler l'heure
0
il suffit de cliquer sur la date aprés fusion horaire et regler GMT
0
vincent170186 Messages postés 316 Date d'inscription mardi 17 mars 2009 Statut Membre Dernière intervention 28 septembre 2012 52
2 août 2010 à 15:43
salut !

une petite bidouille !

$heure=date("H");
$new_heure=intval($heure)+2;
$minute=date("i");
echo "Il est $new_heure h $minute !";


voila !
-1
avion-f16 Messages postés 19246 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 21 avril 2024 4 497
2 août 2010 à 15:46
Et quand il est 23h, on se retrouve à 25h :)
0
vincent170186 Messages postés 316 Date d'inscription mardi 17 mars 2009 Statut Membre Dernière intervention 28 septembre 2012 52
5 août 2010 à 18:11
ha ouais (rhoooo la honte !!!!)! bon je sort ... =)
0
MERCI!!!!!!!!! Grâce à toi vincent1701786 ça fonctionne bien pour moi!

<br/><?php
 $jour = date('d');
$mois = date('m');
$annee = date('Y');
 
$heure = date('H');
$new_heure=intval($heure)+1;
$minute = date('i');

echo 'Bonjour ! Nous sommes le ' . $jour . '/' . $mois . '/' . $annee . ' et il est ' . $new_heure. ' h ' . $minute;
?><br/>
0
tyros25 Messages postés 127 Date d'inscription vendredi 2 janvier 2009 Statut Membre Dernière intervention 5 novembre 2017 7
16 sept. 2009 à 19:34
sa doit venir de l'hebergement.

Si l'ordinateur qui heberge ton site et a deux décalage horaire il montrera pas la bonne heure en france et inversement.
Je pense qu'il y a un moyen d'ajouter les 2h qu'il manque =)
-4