RE la respuesta de Željko Živković, las descripciones de zona horaria como 'Europe/London' solo funcionan si el administrador mySQL ha agregado las tablas de zona horaria al sistema y las mantiene actualizadas.
De lo contrario, se limitan a las compensaciones numéricos como '-4: 00'. Afortunadamente la fecha php ('P') que proporciona el formato (a partir de 5.1.3)
Así por ejemplo, en un archivo de configuración de aplicación que podría tener
define('TZ', 'US/Pacific');
....
if (defined('TZ') && function_exists('date_default_timezone_set')) {
date_default_timezone_set(TZ);
$mdb2->exec("SET SESSION time_zone = " . $mdb2->quote(date('P')));
}
Esto significa PHP y MySQL de acuerdo sobre qué zona horaria desplazamiento para usar.
Utilice siempre TIMESTAMP para almacenar valores de tiempo. La columna se almacena como UNIX_TIME (época), pero implícitamente convertido de time_zone desplazamiento actual cuando se escribe, y la espalda cuando se lee.
Si desea mostrar los tiempos para los usuarios en otras zonas horarias, a continuación, en lugar de un mundial define(), defina su zona horaria dada en lo anterior.TIMESTAMP se convertirán automáticamente por MySQL en el momento de su aplicación ve el conjunto de resultados (que a veces puede ser un problema, si lo que necesita saber en realidad la zona horaria original del evento demasiado, entonces tiene que estar en otra columna)
y por lo que, "¿por qué no almacenar todo momento como int de", que hace que pierda la capacidad de comparar y validar fechas, y que significa siempre tiene que convertir a la representación actualizada a nivel de aplicación (y es difícil de los ojos cuando usted está viendo los datos directamente - rápido, lo que ocurrió en 1254369600)
1 tengo la mirada de mirada furtiva pero siempre almacenar UNIX tiempo/época como firmado int (quiere firmar para las matemáticas de fecha). Nunca confunde y sobrevive el gobierno TZ cambia. – Xailor
+1, mantener las cosas simples y normalizadas (= en UTC) a nivel de datos hace que sea difícil obtener la lógica incorrecta. Todas las conversiones específicas de la configuración regional se deben realizar solo a nivel de visualización. – Kos