Columbus, Ohio est dans le fuseau horaire EDT mais PHP :: DateTime utilise ces php timezones et je n'arrive pas à en trouver un qui me donne l'heure exacte. America/New_York est éteint d'une heure, car jusqu'à EDT se termine, nous sommes +5 pas 4.php Fuseau horaire DateTime pour Columbus Ohio
Je suis confus. Par exemple en ce moment à 11h26 en gros et je reviens à 10h26. Le serveur a le bon temps, j'ai essayé d'utiliser date_default_timezone_set ("EDT") mais ce n'est pas autorisé.
$fromZone = 'Europe/London';
$toZone = 'American/New_York';
function adjustTime($time, $fromZone, $toZone){
$date = new DateTime($time, new DateTimeZone($fromZone));
$date->setTimezone(new DateTimeZone($toZone));
return $date->format('Y-m-d H:i:s');
}
Par exemple: je reçois d'un service Web de savon « 2010-09-23 15:25:56 » qui est l'Europe/heure de Londres et il devrait être transformé en « 2010-09-23 11:25 : 56 "qui est l'heure EDT. J'essayais d'utiliser la fonction ci-dessus et c'est de retour "2010-09-23 10:25:56"
Cela ne fonctionne pas cependant. Utiliser America/New_York me donne 10h26. – Chris
@Chris: Mais étant donné que cela * devrait * fonctionner, cela signifie que vous devriez chercher ailleurs le problème ... comme vérifier que l'idée du serveur UTC est correcte. Il serait également utile si vous publiez le code que vous utilisez pour récupérer l'heure. –
Ce que je fais est de récupérer des chaînes contenant l'heure et la date d'un service web via du savon basé sur l'heure Europe/Londres. Je voulais prendre ceci par exemple "2010-09-23 15:25:56" qui devrait devenir "2010-09-23 11:25:56". Je vais mettre à jour avec mon code qui effectue la transformation. – Chris