Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Umgang mit PHP-Server und MySQL-Server in unterschiedlichen Zeitzonen

Ab PHP 5.1.0 können Sie date_default_timezone_set() -Funktion zum Festlegen der Standardzeitzone, die von allen Datums-/Uhrzeitfunktionen in einem Skript verwendet wird.

Für MySql (zitiert aus MySQL Server Time Zone Support Seite)

Interessant für Sie ist die Einstellung der Zeitzonen pro Verbindung, die Sie am Anfang Ihrer Skripte verwenden würden

SET timezone = 'Europe/London';

Um die Zeitzoneneinstellung des Clients zu erkennen, könnten Sie etwas JavaScript verwenden, um diese Informationen abzurufen und in einem Cookie zu speichern und sie bei nachfolgenden Seitenlesevorgängen zu verwenden, um die richtige Zeitzone zu berechnen.

//Returns the offset (time difference) between Greenwich Mean Time (GMT) 
//and local time of Date object, in minutes.
var offset = new Date().getTimezoneOffset(); 
document.cookie = 'timezoneOffset=' + escape(offset);

Oder Sie bieten Benutzern die Möglichkeit, ihre Zeitzonen selbst festzulegen.