Pregunta

Bien, esta puede ser una pregunta simple, pero todavía tengo que encontrar una solución que funcione, así que a cualquiera que pueda ayudar, gracias de antemano.

Considere el siguiente escenario: tenemos una aplicación web que se ejecuta en MySQL (si necesita saber) que depende del tiempo, por ejemplo, una aplicación que envía un correo electrónico a la hora especificada por el usuario. Ahora cada usuario ha establecido su zona horaria / ciudad adecuada y los servidores se ejecutan en UTC por simplicidad. La hora exacta sería la hora del servidor + zona horaria + horario de verano. El usuario desea que el correo electrónico le llegue el 4 de enero de 2010 a las 5:00 p.m., hora suya. Mi pregunta sería cómo obtener el horario de verano correcto. ¿Qué significa este usuario en una región que observa el horario de verano? Si es así, ¿ya lo observó o no?

Mi primer impulso sería encontrar un servicio web que, dada la zona horaria / ciudad actual, le diera el horario de verano adecuado. Hasta ahora no he encontrado uno. Me desalienta la segunda idea, que tengo que establecer reglas para el horario de verano ya que estos cambian de año en año y en algunos países por más de un día o dos.

Cualquier ayuda muy apreciada.

¿Fue útil?

Solución

Si su lenguaje de programación no admite la lógica de zona horaria elegante, no tiene que programar las reglas usted mismo. Solo necesita programar el soporte para la zoneinfo .

Otros consejos

Almacene sus fechas como segundos desde el 1 de enero de 1970 GMT en su base de datos y siempre tendrá el tiempo tratado. Cuando el usuario ingrese en su tiempo, conviértalo como corresponde usando la configuración de zona horaria correcta y listo.

Sus servidores ya se están ejecutando sin zonas horarias, por lo que cuando llegue el momento es una selección fácil.

Aquí hay algún código para realizar la conversión de zona horaria en LISP:

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top