Appliquer un fuseau horaire sur un date time ?

Eléphant du PHP | 51 Messages

20 nov. 2021, 22:25

Bonjour à tous voici mon code qui fonctionne bien

Code : Tout sélectionner

$timestamp = $row['id_obervation']; $datetimeFormat = 'l d F y H:i:s'; $date = new \DateTime(); $date->setTimestamp($timestamp); $date = $date->format($datetimeFormat); $date = str_replace("January", "Janvier", $date); $date = str_replace("February", "Fevrier", $date); $date = str_replace("March", "Mars", $date); $date = str_replace("April", "Avril", $date); $date = str_replace("May", "Mai", $date); $date = str_replace("June", "Juin", $date); $date = str_replace("July", "Juillet", $date); $date = str_replace("August", "Aout", $date); $date = str_replace("September", "Septembre", $date); $date = str_replace("October", "Octobre", $date); $date = str_replace("November", "Novembre", $date); $date = str_replace("December", "Decembre", $date); $date = str_replace("Monday", "Lundi", $date); $date = str_replace("Thurday", "Jeudi", $date); $date = str_replace("Tuesday", "Mardi", $date); $date = str_replace("Wednesday", "Mercredi", $date); $date = str_replace("Saturday", "Samedi", $date); $date = str_replace("Sunday", "Dimanche", $date); $date = str_replace("Friday", "Vendredi", $date);
Cependant malgré un include plus haut avec

Code : Tout sélectionner

date_default_timezone_set('Pacific/Tahiti');
Mon date time s'affiche correctement mais sans la prise en compte du fuseau horaire.

Merci de votre aide

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

21 nov. 2021, 11:26

De la même façon que tu as utilisé setTimestamp(), tu peux utiliser setTimezone() pour définir le fuseau horaire.
$date->setTimezone(new DateTimeZone('Europe/Paris'));
https://www.php.net/manual/fr/datetime.settimezone.php


Pour info, str_replace() accepte les tableaux donc tu aurais aussi pu faire un tableau des termes anglais et un autre tableau des termes français (dans le même ordre), et juste un str_replace() et hop :)
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphant du PHP | 51 Messages

21 nov. 2021, 22:57

Super merci :)
C'est réglé :)