Las zonas horarias pueden ser de tres tipos diferentes en los objetos DateTime:
- Tipo 1; Un desplazamiento UTC, como en
new DateTime("17 July 2013 -0300");
- Tipo 2; Una abreviatura de zona horaria, como en
new DateTime("17 July 2013 GMT");
- Tipo 3:un identificador de zona horaria, como en
new DateTime( "17 July 2013", new DateTimeZone("Europe/London"));
Solo los objetos DateTime con zonas horarias de tipo 3 adjuntas permitirán el horario de verano correctamente.
Para tener siempre el tipo 3, deberá almacenar la zona horaria en su base de datos como identificadores aceptados de esta lista y aplicarla a su objeto DateTime en la creación de instancias.