Afficher la bonne heure [php]
Résolu
Helenedu39
Messages postés
123
Statut
Membre
-
Stanislas Poisson Messages postés 775 Statut Membre -
Stanislas Poisson Messages postés 775 Statut Membre -
Bonjour,
voila j'ai un leger soucis, j'ai site en php et je voudrais afficher la date et lheure
alors jai la bonne date les bonne minute mais alors l'heure jai deux heure de decalage entre mon site php et l'heure actuelle voila mon code:
$temp=date('d-m-Y H:i:s');
echo $temp;
quelqu'un aurait t'il une idée??
voila j'ai un leger soucis, j'ai site en php et je voudrais afficher la date et lheure
alors jai la bonne date les bonne minute mais alors l'heure jai deux heure de decalage entre mon site php et l'heure actuelle voila mon code:
$temp=date('d-m-Y H:i:s');
echo $temp;
quelqu'un aurait t'il une idée??
A voir également:
- Date_default_timezone_set france
- Afficher appdata - Guide
- Changement d'heure - Guide
- Cdg heure d'arrivée a destination shein ✓ - Forum Consommation & Internet
- Afficher taille dossier windows - Guide
- Heure de connexion whatsapp qui ne changé pas - Accueil - WhatsApp
1 réponse
Oui, ton serveur n'est pas obligatoirement dans la même zone horaire que toi et/ou parametrer pour être caller sur l'heure utc.
Dans ton script quand tu dois manipuler une date, place (une seul fois bien sur) le code suivant:
Tu trouveras les code Region/Pays sur la doc de php https://www.php.net/manual/fr/timezones.php Pour la France, c'est Europe/Paris ce qui donne:
Dans ton script quand tu dois manipuler une date, place (une seul fois bien sur) le code suivant:
date_default_timezone_set('Region/Pays');
Tu trouveras les code Region/Pays sur la doc de php https://www.php.net/manual/fr/timezones.php Pour la France, c'est Europe/Paris ce qui donne:
date_default_timezone_set('Europe/Paris');
<?php /* * */ class Date extends Config{ public $dateTimezone=''; public $formatDate=''; public $formatHeure=''; public $formatDays=''; public $formatMonth=''; public $basicDays=array('Mon','Tue','Wed','Thu','Fri','Sat','Sun'); public $basicMonth=array('January','February','March','April','May','June','July','August','September','October','November','December'); public function __construct($dateTimezone,$formatDate,$formatHeure,$formatDays,$formatMonth){ $this->dateTimezone=$dateTimezone; $this->formatDate=$formatDate; $this->formatHeure=$formatHeure; $this->formatDays=$formatDays; $this->formatMonth=$formatMonth; } public function showAge($tmp){ $d=explode('-',date('Y-m-d')); $tmp=explode('-',$tmp); $r=$d[0]-$tmp[0]; if($d[1]==$tmp[1]){if($d[2]!=$tmp[2]&&$d[2]<$tmp[2]){$r=$r-1;}} elseif($d[1]<$tmp[1]){$r=$r-1;} return $r; } public function dDH(){ date_default_timezone_set($this->dateTimezone); return date('Y-m-d H:i:s'); } public function cDiffDate($d1,$d2,$t){ $r=false; $d=self::dateDifference($d1,$d2); if($t=='y'){ $r=$d['y']; }elseif($t=='m'){ if($d['y']==0){ $r=$d['m']; } }elseif($t=='d'){ if($d['y']==0&&$d['m']==0){ $r=$d['d']; } }elseif($t=='h'){ if($d['y']==0&&$d['m']==0&&$d['d']==0){ $r=$d['h']; } }elseif($t=='i'){ if($d['y']==0&&$d['m']==0&&$d['d']==0&&$d['h']==0){ $r=$d['i']; } }else{ if($d['y']==0&&$d['m']==0&&$d['d']==0&&$d['h']==0&&$d['i']==0){ $r=$d['s']; } } return $r; } public function dDiff($tmp){ $r=false; date_default_timezone_set($this->dateTimezone); $now=new DateTime(date('Y-m-d H:i:s')); $next=new DateTime($tmp); if($now!=$next){ $int=$now->diff($next); if($int->invert==0&&$int->days==0){ $r=true; } } return $r; } public function dRelativeTime($date,$firstLine=false){ $time=self::dateDifference(date('Y-m-d H:i:s'),$date); if($time['n']=='f'){# Futur $return=(($firstLine)?'Pour dans ':'pour dans '); }else{# Passé $return=(($firstLine)?'Il y a ':'il y a '); } if($time['y']>0){$return.=$time['y'].(($time['y']>1)?' ans ':' an '); if($time['m']>0){$return.=$time['m'].' mois ';} if($time['w']>0){$return.=$time['w'].(($time['w']>1)?' semaines ':' semaine '); if($time['wd']>0){$return.='et '.$time['wd'].(($time['wd']>1)?' jours ':' jour ');} }elseif($time['d']>0){$return.='et '.$time['d'].(($time['d']>1)?' jours ':' jour ');} }elseif($time['m']>0){$return.=$time['m'].' mois '; if($time['w']>0){$return.=$time['w'].(($time['w']>1)?' semaines ':' semaine '); if($time['wd']>0){$return.='et '.$time['wd'].(($time['wd']>1)?' jours ':' jour ');} }elseif($time['d']>0){$return.=$time['d'].(($time['d']>1)?' jours ':' jour ');} }elseif($time['w']>0){$return.=$time['w'].(($time['w']>1)?' semaines ':' semaine '); if($time['wd']>0){$return.='et '.$time['wd'].(($time['wd']>1)?' jours ':' jour ');} }elseif($time['d']>0){$return.=$time['d'].(($time['d']>1)?' jours ':' jour '); if($time['h']>0){$return.='et '.$time['h'].(($time['h']>1)?' heures ':' heure ');} }elseif($time['h']>0){$return.=$time['h'].(($time['h']>1)?' heures ':' heure '); if($time['i']>0){$return.='et '.$time['i'].(($time['i']>1)?' minutes ':' minute ');} }elseif($time['i']>0){$return.=$time['i'].(($time['i']>1)?' minutes ':' minute '); if($time['s']>0){$return.='et '.$time['s'].(($time['s']>1)?' secondes ':' seconde ');} }elseif($time['s']>0){$return.=$time['s'].(($time['s']>1)?' secondes ':' seconde '); }else{$return.='moins de 1 seconde'; } return trim($return); } public function dDateHeure($d,$f=null){ date_default_timezone_set($this->dateTimezone); if(!is_int($d)){ $tmp=explode(' ',$d); $date=explode('-',$tmp[0]); $heure=explode(':',$tmp[1]); $d=mktime($heure[0],$heure[1],$heure[2],$date[1],$date[2],$date[0]); } if($f!=null){ $date=date($f,$d); }else{ $date=date($this->formatDate,$d); } $date=str_replace($this->basicDays,$this->formatDays,$date); $date=str_replace($this->basicMonth,$this->formatMonth,$date); if($f==null){ $heure=date($this->formatHeure,$d); } if($f!=null){ return $date; }else{ return $date.' à '.$heure; } } public function dDate($d,$f=null){ date_default_timezone_set($this->dateTimezone); if(!is_int($d)){ $tmp=explode(' ',$d); $date=explode('-',$tmp[0]); $d=mktime(0,0,0,$date[1],$date[2],$date[0]); } if($f!=null){ $date=date($f,$d); }else{ $date=date($this->formatDate,$d); } $date=str_replace($this->basicDays,$this->formatDays,$date); $date=str_replace($this->basicMonth,$this->formatMonth,$date); if($f==null){ $heure=date($this->formatHeure,$d); } return $date; } public function dHeure($d){ date_default_timezone_set($this->dateTimezone); if(!is_int($d)){ $tmp=explode(' ',$d); $heure=explode(':',$tmp[1]); $d=mktime($heure[0],$heure[1],$heure[2],0,0,0); } return date($this->formatHeure,$d); } public function dateDifference($date1,$date2){ if(!is_int($date1)){ $tmp=explode(' ',$date1); $d=explode('-',$tmp[0]); $h=explode(':',$tmp[1]); $date1=mktime($h[0],$h[1],$h[2],$d[1],$d[2],$d[0]); } if(!is_int($date2)){ $tmp=explode(' ',$date2); $d=explode('-',$tmp[0]); $h=explode(':',$tmp[1]); $date2=mktime($h[0],$h[1],$h[2],$d[1],$d[2],$d[0]); } $s=$date2-$date1; $n=(($s<0)?'p':'f'); $s=abs($s); $y=intval($s/31104000); $s-=$y*31104000; $m=intval($s/2592000); $s-=$m*2592000; $d=intval($s/86400); $s-=$d*86400; $w=round($d/7); $wd=$d-($w*7); if($wd<0){ $w=$w-1; $wd=7+$wd; } $h=intval($s/3600); $s-=$h*3600; $i=intval($s/60); $s-=$i*60; return array('n'=>$n,'y'=>$y,'m'=>$m,'w'=>$w,'wd'=>$wd,'d'=>$d,'h'=>$h,'i'=>$i,'s'=>$s); } public function __destruct(){} } ?>