Time Zones

A la hora de programar se debe considerarel  timezone (zona horaria) ya que no es solo una diferencia horaria (como GMT+2), sino una región geográfica que comparte las mismas reglas para la hora local. Se representa con un identificador estándar como "Europe/Madrid" o "America/New_York".

La clave es que estas "reglas" incluyen tanto la diferencia horaria estándar con UTC como, fundamentalmente, las fechas y horas exactas en que se aplica y se quita el horario de verano (DST).

¿Por Qué es un Tema Complejo?

Ignorar cómo funcionan las zonas horarias es una de las fuentes más comunes de errores en aplicaciones. La complejidad se debe a tres conceptos interconectados:

  1. UTC (Tiempo Universal Coordinado) ⏰: Piensa en el UTC como el idioma universal del tiempo. Es un estándar global que no tiene horario de verano y es el mismo en todo el mundo en cualquier momento. Es el punto de referencia único y sin ambigüedades.

  2. Offset (Diferencia Horaria) ↔️: Es la diferencia en horas y minutos entre una zona horaria local y el UTC. Por ejemplo, en este momento (septiembre en Madrid), tu offset es +02:00. Esto significa que 10:24 en Madrid es 08:24 en UTC.

  3. Identificador IANA (TZ Database) 🌍: Este es el nombre oficial, como "Europe/Madrid". Este identificador no solo sabe que Madrid ahora está en +02:00 (llamado CEST), sino que también sabe que en invierno cambiará a +01:00 (llamado CET) y las fechas exactas en que ocurren esos cambios. Un simple +02:00 no te dice eso.


Puntos Clave a Tener en Cuenta para Programadores

Aquí tienes lo que es crucial saber para evitar problemas:

1. Almacena Siempre la Hora en UTC 💾

Esta es la regla de oro. Guarda todas las fechas y horas en tu base de datos en UTC.

  • Por qué: El UTC es absoluto. 2025-09-02 08:24:13Z (la 'Z' indica UTC) representa un único momento inequívoco en la historia del universo. En cambio, 2025-09-02 10:24:13 podría ser en Madrid, París o Johannesburgo. Almacenar en UTC elimina toda ambigüedad.

  • En la práctica: En tu base de datos, usa tipos de datos como TIMESTAMP WITH TIME ZONE (en PostgreSQL) o simplemente guarda el timestamp UTC. En tu código PHP, siempre que captures una fecha, conviértela a UTC antes de guardarla.

2. Muestra Siempre la Hora en la Zona Local del Usuario 💻

Nadie quiere hacer cálculos mentales para saber a qué hora es su reunión. Tu aplicación debe ser responsable de convertir la fecha UTC almacenada a la zona horaria del usuario justo antes de mostrarla.

  • Por qué: Mejora radicalmente la experiencia del usuario. Si un usuario en Londres y otro en Madrid ven el mismo evento, deberían ver la hora correcta para ellos (09:24 y 10:24 respectivamente).

  • En la práctica: Para hacer esto, primero necesitas saber la zona horaria del usuario. La forma más fiable es pedirla durante el registro o detectarla desde su navegador usando JavaScript y guardarla en su perfil.

3. No Hagas Cálculos con Offsets Fijos

Nunca asumas que España es "siempre GMT+2". Es un error común que causa fallos dos veces al año.

  • Por qué: El horario de verano cambia el offset. Si programas una tarea para dentro de 6 meses asumiendo un offset fijo, es muy probable que se ejecute una hora antes o después de lo esperado.

  • En la práctica: Utiliza siempre los identificadores IANA ("Europe/Madrid") y deja que las librerías de fechas y horas (DateTime en PHP, Luxon/Temporal en JS) hagan el trabajo pesado. Ellas conocen todas las reglas del horario de verano.

4. Ten Cuidado con las Operaciones de Fechas Futuras

Planificar eventos o tareas futuras es donde surgen los problemas más sutiles.

  • Ejemplo: ¿Qué es "un día después" del último sábado de octubre a las 02:30 en Madrid? Ese día el reloj se atrasa de 03:00 a 02:00. Añadir "24 horas" no es lo mismo que añadir "1 día". Las librerías de calidad gestionan estas "horas fantasma" o "repetidas" correctamente.

  • En la práctica: Siempre que realices aritmética de fechas, hazlo sobre objetos DateTime que tengan la zona horaria correcta asignada, en lugar de manipular timestamps numéricos directamente.

Buenas Prácticas (Resumen)

  1. Backend y Base de Datos: Todo en UTC.

  2. Frontend (Interfaz de usuario): Convertir la fecha UTC a la zona horaria local del usuario solo para mostrarla.

  3. Identificadores: Usa siempre nombres IANA ("Europe/Madrid"), nunca offsets numéricos (+02:00).

  4. Librerías: Confía en las librerías estándar y robustas de tu lenguaje. En PHP, DateTime y DateTimeZone son tus mejores herramientas.

Un listado de timezones que puedes utilizar es el siguiente:

[
{
"id": "UTC",
"value": "(UTC +00:00) UTC"
},
{
"id": "Europe/Madrid",
"value": "(UTC+02:00) Europe/Madrid"
},
{
"id": "Pacific/Niue",
"value": "(UTC-11:00) Pacific/Niue"
},
{
"id": "Pacific/Pago_Pago",
"value": "(UTC-11:00) Pacific/Pago_Pago"
},
{
"id": "Pacific/Midway",
"value": "(UTC-11:00) Pacific/Midway"
},
{
"id": "Pacific/Tahiti",
"value": "(UTC-10:00) Pacific/Tahiti"
},
{
"id": "Pacific/Honolulu",
"value": "(UTC-10:00) Pacific/Honolulu"
},
{
"id": "Pacific/Rarotonga",
"value": "(UTC-10:00) Pacific/Rarotonga"
},
{
"id": "Pacific/Marquesas",
"value": "(UTC-09:30) Pacific/Marquesas"
},
{
"id": "Pacific/Gambier",
"value": "(UTC-09:00) Pacific/Gambier"
},
{
"id": "America/Adak",
"value": "(UTC-09:00) America/Adak"
},
{
"id": "America/Metlakatla",
"value": "(UTC-08:00) America/Metlakatla"
},
{
"id": "America/Nome",
"value": "(UTC-08:00) America/Nome"
},
{
"id": "America/Yakutat",
"value": "(UTC-08:00) America/Yakutat"
},
{
"id": "America/Anchorage",
"value": "(UTC-08:00) America/Anchorage"
},
{
"id": "America/Juneau",
"value": "(UTC-08:00) America/Juneau"
},
{
"id": "America/Sitka",
"value": "(UTC-08:00) America/Sitka"
},
{
"id": "Pacific/Pitcairn",
"value": "(UTC-08:00) Pacific/Pitcairn"
},
{
"id": "America/Whitehorse",
"value": "(UTC-07:00) America/Whitehorse"
},
{
"id": "America/Vancouver",
"value": "(UTC-07:00) America/Vancouver"
},
{
"id": "America/Hermosillo",
"value": "(UTC-07:00) America/Hermosillo"
},
{
"id": "America/Tijuana",
"value": "(UTC-07:00) America/Tijuana"
},
{
"id": "America/Mazatlan",
"value": "(UTC-07:00) America/Mazatlan"
},
{
"id": "America/Fort_Nelson",
"value": "(UTC-07:00) America/Fort_Nelson"
},
{
"id": "America/Chihuahua",
"value": "(UTC-07:00) America/Chihuahua"
},
{
"id": "America/Creston",
"value": "(UTC-07:00) America/Creston"
},
{
"id": "America/Los_Angeles",
"value": "(UTC-07:00) America/Los_Angeles"
},
{
"id": "America/Dawson",
"value": "(UTC-07:00) America/Dawson"
},
{
"id": "America/Phoenix",
"value": "(UTC-07:00) America/Phoenix"
},
{
"id": "America/Dawson_Creek",
"value": "(UTC-07:00) America/Dawson_Creek"
},
{
"id": "America/Edmonton",
"value": "(UTC-06:00) America/Edmonton"
},
{
"id": "America/Regina",
"value": "(UTC-06:00) America/Regina"
},
{
"id": "America/Bahia_Banderas",
"value": "(UTC-06:00) America/Bahia_Banderas"
},
{
"id": "America/Managua",
"value": "(UTC-06:00) America/Managua"
},
{
"id": "America/Inuvik",
"value": "(UTC-06:00) America/Inuvik"
},
{
"id": "America/Belize",
"value": "(UTC-06:00) America/Belize"
},
{
"id": "America/Guatemala",
"value": "(UTC-06:00) America/Guatemala"
},
{
"id": "America/Boise",
"value": "(UTC-06:00) America/Boise"
},
{
"id": "America/Denver",
"value": "(UTC-06:00) America/Denver"
},
{
"id": "America/Merida",
"value": "(UTC-06:00) America/Merida"
},
{
"id": "America/Mexico_City",
"value": "(UTC-06:00) America/Mexico_City"
},
{
"id": "America/Ojinaga",
"value": "(UTC-06:00) America/Ojinaga"
},
{
"id": "America/El_Salvador",
"value": "(UTC-06:00) America/El_Salvador"
},
{
"id": "Pacific/Galapagos",
"value": "(UTC-06:00) Pacific/Galapagos"
},
{
"id": "America/Costa_Rica",
"value": "(UTC-06:00) America/Costa_Rica"
},
{
"id": "America/Yellowknife",
"value": "(UTC-06:00) America/Yellowknife"
},
{
"id": "America/Cambridge_Bay",
"value": "(UTC-06:00) America/Cambridge_Bay"
},
{
"id": "America/Monterrey",
"value": "(UTC-06:00) America/Monterrey"
},
{
"id": "America/Tegucigalpa",
"value": "(UTC-06:00) America/Tegucigalpa"
},
{
"id": "America/Swift_Current",
"value": "(UTC-06:00) America/Swift_Current"
},
{
"id": "America/Cayman",
"value": "(UTC-05:00) America/Cayman"
},
{
"id": "America/Chicago",
"value": "(UTC-05:00) America/Chicago"
},
{
"id": "America/Guayaquil",
"value": "(UTC-05:00) America/Guayaquil"
},
{
"id": "America/Bogota",
"value": "(UTC-05:00) America/Bogota"
},
{
"id": "America/Atikokan",
"value": "(UTC-05:00) America/Atikokan"
},
{
"id": "America/Eirunepe",
"value": "(UTC-05:00) America/Eirunepe"
},
{
"id": "America/Indiana/Knox",
"value": "(UTC-05:00) America/Indiana/Knox"
},
{
"id": "America/Indiana/Tell_City",
"value": "(UTC-05:00) America/Indiana/Tell_City"
},
{
"id": "America/Rainy_River",
"value": "(UTC-05:00) America/Rainy_River"
},
{
"id": "America/Jamaica",
"value": "(UTC-05:00) America/Jamaica"
},
{
"id": "America/Cancun",
"value": "(UTC-05:00) America/Cancun"
},
{
"id": "America/Resolute",
"value": "(UTC-05:00) America/Resolute"
},
{
"id": "America/North_Dakota/Beulah",
"value": "(UTC-05:00) America/North_Dakota/Beulah"
},
{
"id": "America/Rio_Branco",
"value": "(UTC-05:00) America/Rio_Branco"
},
{
"id": "America/Rankin_Inlet",
"value": "(UTC-05:00) America/Rankin_Inlet"
},
{
"id": "America/Winnipeg",
"value": "(UTC-05:00) America/Winnipeg"
},
{
"id": "America/Menominee",
"value": "(UTC-05:00) America/Menominee"
},
{
"id": "America/Lima",
"value": "(UTC-05:00) America/Lima"
},
{
"id": "Pacific/Easter",
"value": "(UTC-05:00) Pacific/Easter"
},
{
"id": "America/North_Dakota/Center",
"value": "(UTC-05:00) America/North_Dakota/Center"
},
{
"id": "America/North_Dakota/New_Salem",
"value": "(UTC-05:00) America/North_Dakota/New_Salem"
},
{
"id": "America/Panama",
"value": "(UTC-05:00) America/Panama"
},
{
"id": "America/Matamoros",
"value": "(UTC-05:00) America/Matamoros"
},
{
"id": "America/Nipigon",
"value": "(UTC-04:00) America/Nipigon"
},
{
"id": "America/Pangnirtung",
"value": "(UTC-04:00) America/Pangnirtung"
},
{
"id": "America/Port_of_Spain",
"value": "(UTC-04:00) America/Port_of_Spain"
},
{
"id": "America/New_York",
"value": "(UTC-04:00) America/New_York"
},
{
"id": "America/Nassau",
"value": "(UTC-04:00) America/Nassau"
},
{
"id": "America/Grand_Turk",
"value": "(UTC-04:00) America/Grand_Turk"
},
{
"id": "America/Grenada",
"value": "(UTC-04:00) America/Grenada"
},
{
"id": "America/Guadeloupe",
"value": "(UTC-04:00) America/Guadeloupe"
},
{
"id": "America/Montserrat",
"value": "(UTC-04:00) America/Montserrat"
},
{
"id": "America/Kentucky/Louisville",
"value": "(UTC-04:00) America/Kentucky/Louisville"
},
{
"id": "America/Kentucky/Monticello",
"value": "(UTC-04:00) America/Kentucky/Monticello"
},
{
"id": "America/Marigot",
"value": "(UTC-04:00) America/Marigot"
},
{
"id": "America/Manaus",
"value": "(UTC-04:00) America/Manaus"
},
{
"id": "America/Guyana",
"value": "(UTC-04:00) America/Guyana"
},
{
"id": "America/Havana",
"value": "(UTC-04:00) America/Havana"
},
{
"id": "America/Lower_Princes",
"value": "(UTC-04:00) America/Lower_Princes"
},
{
"id": "America/Indiana/Indianapolis",
"value": "(UTC-04:00) America/Indiana/Indianapolis"
},
{
"id": "America/Indiana/Marengo",
"value": "(UTC-04:00) America/Indiana/Marengo"
},
{
"id": "America/Indiana/Petersburg",
"value": "(UTC-04:00) America/Indiana/Petersburg"
},
{
"id": "America/La_Paz",
"value": "(UTC-04:00) America/La_Paz"
},
{
"id": "America/Indiana/Vevay",
"value": "(UTC-04:00) America/Indiana/Vevay"
},
{
"id": "America/Indiana/Vincennes",
"value": "(UTC-04:00) America/Indiana/Vincennes"
},
{
"id": "America/Indiana/Winamac",
"value": "(UTC-04:00) America/Indiana/Winamac"
},
{
"id": "America/Kralendijk",
"value": "(UTC-04:00) America/Kralendijk"
},
{
"id": "America/Iqaluit",
"value": "(UTC-04:00) America/Iqaluit"
},
{
"id": "America/Martinique",
"value": "(UTC-04:00) America/Martinique"
},
{
"id": "America/Port-au-Prince",
"value": "(UTC-04:00) America/Port-au-Prince"
},
{
"id": "America/Dominica",
"value": "(UTC-04:00) America/Dominica"
},
{
"id": "America/Asuncion",
"value": "(UTC-04:00) America/Asuncion"
},
{
"id": "America/Tortola",
"value": "(UTC-04:00) America/Tortola"
},
{
"id": "America/Toronto",
"value": "(UTC-04:00) America/Toronto"
},
{
"id": "America/Thunder_Bay",
"value": "(UTC-04:00) America/Thunder_Bay"
},
{
"id": "America/St_Vincent",
"value": "(UTC-04:00) America/St_Vincent"
},
{
"id": "America/St_Thomas",
"value": "(UTC-04:00) America/St_Thomas"
},
{
"id": "America/St_Lucia",
"value": "(UTC-04:00) America/St_Lucia"
},
{
"id": "America/St_Kitts",
"value": "(UTC-04:00) America/St_Kitts"
},
{
"id": "America/St_Barthelemy",
"value": "(UTC-04:00) America/St_Barthelemy"
},
{
"id": "America/Santo_Domingo",
"value": "(UTC-04:00) America/Santo_Domingo"
},
{
"id": "America/Detroit",
"value": "(UTC-04:00) America/Detroit"
},
{
"id": "America/Anguilla",
"value": "(UTC-04:00) America/Anguilla"
},
{
"id": "America/Antigua",
"value": "(UTC-04:00) America/Antigua"
},
{
"id": "America/Aruba",
"value": "(UTC-04:00) America/Aruba"
},
{
"id": "America/Porto_Velho",
"value": "(UTC-04:00) America/Porto_Velho"
},
{
"id": "America/Puerto_Rico",
"value": "(UTC-04:00) America/Puerto_Rico"
},
{
"id": "America/Barbados",
"value": "(UTC-04:00) America/Barbados"
},
{
"id": "America/Caracas",
"value": "(UTC-04:00) America/Caracas"
},
{
"id": "America/Boa_Vista",
"value": "(UTC-04:00) America/Boa_Vista"
},
{
"id": "America/Blanc-Sablon",
"value": "(UTC-04:00) America/Blanc-Sablon"
},
{
"id": "America/Curacao",
"value": "(UTC-04:00) America/Curacao"
},
{
"id": "America/Cuiaba",
"value": "(UTC-04:00) America/Cuiaba"
},
{
"id": "America/Campo_Grande",
"value": "(UTC-04:00) America/Campo_Grande"
},
{
"id": "America/Moncton",
"value": "(UTC-03:00) America/Moncton"
},
{
"id": "America/Goose_Bay",
"value": "(UTC-03:00) America/Goose_Bay"
},
{
"id": "America/Glace_Bay",
"value": "(UTC-03:00) America/Glace_Bay"
},
{
"id": "America/Fortaleza",
"value": "(UTC-03:00) America/Fortaleza"
},
{
"id": "America/Bahia",
"value": "(UTC-03:00) America/Bahia"
},
{
"id": "America/Thule",
"value": "(UTC-03:00) America/Thule"
},
{
"id": "America/Cayenne",
"value": "(UTC-03:00) America/Cayenne"
},
{
"id": "Antarctica/Palmer",
"value": "(UTC-03:00) Antarctica/Palmer"
},
{
"id": "Antarctica/Rothera",
"value": "(UTC-03:00) Antarctica/Rothera"
},
{
"id": "Atlantic/Bermuda",
"value": "(UTC-03:00) Atlantic/Bermuda"
},
{
"id": "America/Paramaribo",
"value": "(UTC-03:00) America/Paramaribo"
},
{
"id": "America/Punta_Arenas",
"value": "(UTC-03:00) America/Punta_Arenas"
},
{
"id": "Atlantic/Stanley",
"value": "(UTC-03:00) Atlantic/Stanley"
},
{
"id": "America/Montevideo",
"value": "(UTC-03:00) America/Montevideo"
},
{
"id": "America/Recife",
"value": "(UTC-03:00) America/Recife"
},
{
"id": "America/Sao_Paulo",
"value": "(UTC-03:00) America/Sao_Paulo"
},
{
"id": "America/Argentina/Jujuy",
"value": "(UTC-03:00) America/Argentina/Jujuy"
},
{
"id": "America/Halifax",
"value": "(UTC-03:00) America/Halifax"
},
{
"id": "America/Argentina/Ushuaia",
"value": "(UTC-03:00) America/Argentina/Ushuaia"
},
{
"id": "America/Argentina/Tucuman",
"value": "(UTC-03:00) America/Argentina/Tucuman"
},
{
"id": "America/Argentina/San_Luis",
"value": "(UTC-03:00) America/Argentina/San_Luis"
},
{
"id": "America/Argentina/San_Juan",
"value": "(UTC-03:00) America/Argentina/San_Juan"
},
{
"id": "America/Argentina/Rio_Gallegos",
"value": "(UTC-03:00) America/Argentina/Rio_Gallegos"
},
{
"id": "America/Argentina/Mendoza",
"value": "(UTC-03:00) America/Argentina/Mendoza"
},
{
"id": "America/Argentina/La_Rioja",
"value": "(UTC-03:00) America/Argentina/La_Rioja"
},
{
"id": "America/Argentina/Salta",
"value": "(UTC-03:00) America/Argentina/Salta"
},
{
"id": "America/Argentina/Cordoba",
"value": "(UTC-03:00) America/Argentina/Cordoba"
},
{
"id": "America/Argentina/Catamarca",
"value": "(UTC-03:00) America/Argentina/Catamarca"
},
{
"id": "America/Santiago",
"value": "(UTC-03:00) America/Santiago"
},
{
"id": "America/Maceio",
"value": "(UTC-03:00) America/Maceio"
},
{
"id": "America/Santarem",
"value": "(UTC-03:00) America/Santarem"
},
{
"id": "America/Belem",
"value": "(UTC-03:00) America/Belem"
},
{
"id": "America/Argentina/Buenos_Aires",
"value": "(UTC-03:00) America/Argentina/Buenos_Aires"
},
{
"id": "America/Araguaina",
"value": "(UTC-03:00) America/Araguaina"
},
{
"id": "America/St_Johns",
"value": "(UTC-02:30) America/St_Johns"
},
{
"id": "America/Noronha",
"value": "(UTC-02:00) America/Noronha"
},
{
"id": "America/Nuuk",
"value": "(UTC-02:00) America/Nuuk"
},
{
"id": "Atlantic/South_Georgia",
"value": "(UTC-02:00) Atlantic/South_Georgia"
},
{
"id": "America/Miquelon",
"value": "(UTC-02:00) America/Miquelon"
},
{
"id": "Atlantic/Cape_Verde",
"value": "(UTC-01:00) Atlantic/Cape_Verde"
},
{
"id": "Africa/Accra",
"value": "(UTC+00:00) Africa/Accra"
},
{
"id": "Atlantic/Azores",
"value": "(UTC+00:00) Atlantic/Azores"
},
{
"id": "Atlantic/Reykjavik",
"value": "(UTC+00:00) Atlantic/Reykjavik"
},
{
"id": "America/Scoresbysund",
"value": "(UTC+00:00) America/Scoresbysund"
},
{
"id": "Atlantic/St_Helena",
"value": "(UTC+00:00) Atlantic/St_Helena"
},
{
"id": "Africa/Abidjan",
"value": "(UTC+00:00) Africa/Abidjan"
},
{
"id": "America/Danmarkshavn",
"value": "(UTC+00:00) America/Danmarkshavn"
},
{
"id": "Africa/Monrovia",
"value": "(UTC+00:00) Africa/Monrovia"
},
{
"id": "Africa/Bissau",
"value": "(UTC+00:00) Africa/Bissau"
},
{
"id": "Africa/Casablanca",
"value": "(UTC+00:00) Africa/Casablanca"
},
{
"id": "Africa/Banjul",
"value": "(UTC+00:00) Africa/Banjul"
},
{
"id": "Africa/Conakry",
"value": "(UTC+00:00) Africa/Conakry"
},
{
"id": "Africa/Dakar",
"value": "(UTC+00:00) Africa/Dakar"
},
{
"id": "Africa/Bamako",
"value": "(UTC+00:00) Africa/Bamako"
},
{
"id": "Africa/Freetown",
"value": "(UTC+00:00) Africa/Freetown"
},
{
"id": "Africa/Lome",
"value": "(UTC+00:00) Africa/Lome"
},
{
"id": "Africa/El_Aaiun",
"value": "(UTC+00:00) Africa/El_Aaiun"
},
{
"id": "Africa/Sao_Tome",
"value": "(UTC+00:00) Africa/Sao_Tome"
},
{
"id": "Africa/Ouagadougou",
"value": "(UTC+00:00) Africa/Ouagadougou"
},
{
"id": "Africa/Nouakchott",
"value": "(UTC+00:00) Africa/Nouakchott"
},
{
"id": "Europe/Guernsey",
"value": "(UTC+01:00) Europe/Guernsey"
},
{
"id": "Europe/Lisbon",
"value": "(UTC+01:00) Europe/Lisbon"
},
{
"id": "Africa/Brazzaville",
"value": "(UTC+01:00) Africa/Brazzaville"
},
{
"id": "Europe/Dublin",
"value": "(UTC+01:00) Europe/Dublin"
},
{
"id": "Africa/Tunis",
"value": "(UTC+01:00) Africa/Tunis"
},
{
"id": "Atlantic/Canary",
"value": "(UTC+01:00) Atlantic/Canary"
},
{
"id": "Africa/Bangui",
"value": "(UTC+01:00) Africa/Bangui"
},
{
"id": "Atlantic/Faroe",
"value": "(UTC+01:00) Atlantic/Faroe"
},
{
"id": "Atlantic/Madeira",
"value": "(UTC+01:00) Atlantic/Madeira"
},
{
"id": "Africa/Ndjamena",
"value": "(UTC+01:00) Africa/Ndjamena"
},
{
"id": "Africa/Algiers",
"value": "(UTC+01:00) Africa/Algiers"
},
{
"id": "Africa/Douala",
"value": "(UTC+01:00) Africa/Douala"
},
{
"id": "Europe/London",
"value": "(UTC+01:00) Europe/London"
},
{
"id": "Africa/Porto-Novo",
"value": "(UTC+01:00) Africa/Porto-Novo"
},
{
"id": "Africa/Luanda",
"value": "(UTC+01:00) Africa/Luanda"
},
{
"id": "Africa/Malabo",
"value": "(UTC+01:00) Africa/Malabo"
},
{
"id": "Europe/Isle_of_Man",
"value": "(UTC+01:00) Europe/Isle_of_Man"
},
{
"id": "Europe/Jersey",
"value": "(UTC+01:00) Europe/Jersey"
},
{
"id": "Africa/Kinshasa",
"value": "(UTC+01:00) Africa/Kinshasa"
},
{
"id": "Africa/Lagos",
"value": "(UTC+01:00) Africa/Lagos"
},
{
"id": "Africa/Libreville",
"value": "(UTC+01:00) Africa/Libreville"
},
{
"id": "Africa/Niamey",
"value": "(UTC+01:00) Africa/Niamey"
},
{
"id": "Europe/Rome",
"value": "(UTC+02:00) Europe/Rome"
},
{
"id": "Europe/San_Marino",
"value": "(UTC+02:00) Europe/San_Marino"
},
{
"id": "Europe/Budapest",
"value": "(UTC+02:00) Europe/Budapest"
},
{
"id": "Europe/Sarajevo",
"value": "(UTC+02:00) Europe/Sarajevo"
},
{
"id": "Europe/Skopje",
"value": "(UTC+02:00) Europe/Skopje"
},
{
"id": "Europe/Kaliningrad",
"value": "(UTC+02:00) Europe/Kaliningrad"
},
{
"id": "Europe/Stockholm",
"value": "(UTC+02:00) Europe/Stockholm"
},
{
"id": "Europe/Tirane",
"value": "(UTC+02:00) Europe/Tirane"
},
{
"id": "Europe/Podgorica",
"value": "(UTC+02:00) Europe/Podgorica"
},
{
"id": "Europe/Vaduz",
"value": "(UTC+02:00) Europe/Vaduz"
},
{
"id": "Europe/Vatican",
"value": "(UTC+02:00) Europe/Vatican"
},
{
"id": "Europe/Vienna",
"value": "(UTC+02:00) Europe/Vienna"
},
{
"id": "Europe/Warsaw",
"value": "(UTC+02:00) Europe/Warsaw"
},
{
"id": "Europe/Prague",
"value": "(UTC+02:00) Europe/Prague"
},
{
"id": "Europe/Madrid",
"value": "(UTC+02:00) Europe/Madrid"
},
{
"id": "Europe/Paris",
"value": "(UTC+02:00) Europe/Paris"
},
{
"id": "Europe/Oslo",
"value": "(UTC+02:00) Europe/Oslo"
},
{
"id": "Europe/Monaco",
"value": "(UTC+02:00) Europe/Monaco"
},
{
"id": "Europe/Malta",
"value": "(UTC+02:00) Europe/Malta"
},
{
"id": "Europe/Brussels",
"value": "(UTC+02:00) Europe/Brussels"
},
{
"id": "Europe/Bratislava",
"value": "(UTC+02:00) Europe/Bratislava"
},
{
"id": "Europe/Copenhagen",
"value": "(UTC+02:00) Europe/Copenhagen"
},
{
"id": "Europe/Berlin",
"value": "(UTC+02:00) Europe/Berlin"
},
{
"id": "Europe/Belgrade",
"value": "(UTC+02:00) Europe/Belgrade"
},
{
"id": "Europe/Andorra",
"value": "(UTC+02:00) Europe/Andorra"
},
{
"id": "Europe/Luxembourg",
"value": "(UTC+02:00) Europe/Luxembourg"
},
{
"id": "Europe/Zurich",
"value": "(UTC+02:00) Europe/Zurich"
},
{
"id": "Europe/Amsterdam",
"value": "(UTC+02:00) Europe/Amsterdam"
},
{
"id": "Europe/Ljubljana",
"value": "(UTC+02:00) Europe/Ljubljana"
},
{
"id": "Europe/Busingen",
"value": "(UTC+02:00) Europe/Busingen"
},
{
"id": "Europe/Zagreb",
"value": "(UTC+02:00) Europe/Zagreb"
},
{
"id": "Europe/Gibraltar",
"value": "(UTC+02:00) Europe/Gibraltar"
},
{
"id": "Africa/Lubumbashi",
"value": "(UTC+02:00) Africa/Lubumbashi"
},
{
"id": "Africa/Blantyre",
"value": "(UTC+02:00) Africa/Blantyre"
},
{
"id": "Africa/Ceuta",
"value": "(UTC+02:00) Africa/Ceuta"
},
{
"id": "Antarctica/Troll",
"value": "(UTC+02:00) Antarctica/Troll"
},
{
"id": "Africa/Gaborone",
"value": "(UTC+02:00) Africa/Gaborone"
},
{
"id": "Africa/Harare",
"value": "(UTC+02:00) Africa/Harare"
},
{
"id": "Africa/Johannesburg",
"value": "(UTC+02:00) Africa/Johannesburg"
},
{
"id": "Africa/Cairo",
"value": "(UTC+02:00) Africa/Cairo"
},
{
"id": "Africa/Juba",
"value": "(UTC+02:00) Africa/Juba"
},
{
"id": "Africa/Khartoum",
"value": "(UTC+02:00) Africa/Khartoum"
},
{
"id": "Africa/Kigali",
"value": "(UTC+02:00) Africa/Kigali"
},
{
"id": "Africa/Bujumbura",
"value": "(UTC+02:00) Africa/Bujumbura"
},
{
"id": "Africa/Maputo",
"value": "(UTC+02:00) Africa/Maputo"
},
{
"id": "Africa/Windhoek",
"value": "(UTC+02:00) Africa/Windhoek"
},
{
"id": "Africa/Maseru",
"value": "(UTC+02:00) Africa/Maseru"
},
{
"id": "Africa/Mbabane",
"value": "(UTC+02:00) Africa/Mbabane"
},
{
"id": "Africa/Tripoli",
"value": "(UTC+02:00) Africa/Tripoli"
},
{
"id": "Africa/Lusaka",
"value": "(UTC+02:00) Africa/Lusaka"
},
{
"id": "Europe/Athens",
"value": "(UTC+03:00) Europe/Athens"
},
{
"id": "Europe/Chisinau",
"value": "(UTC+03:00) Europe/Chisinau"
},
{
"id": "Asia/Hebron",
"value": "(UTC+03:00) Asia/Hebron"
},
{
"id": "Asia/Bahrain",
"value": "(UTC+03:00) Asia/Bahrain"
},
{
"id": "Asia/Baghdad",
"value": "(UTC+03:00) Asia/Baghdad"
},
{
"id": "Europe/Moscow",
"value": "(UTC+03:00) Europe/Moscow"
},
{
"id": "Europe/Minsk",
"value": "(UTC+03:00) Europe/Minsk"
},
{
"id": "Europe/Mariehamn",
"value": "(UTC+03:00) Europe/Mariehamn"
},
{
"id": "Asia/Amman",
"value": "(UTC+03:00) Asia/Amman"
},
{
"id": "Asia/Aden",
"value": "(UTC+03:00) Asia/Aden"
},
{
"id": "Africa/Asmara",
"value": "(UTC+03:00) Africa/Asmara"
},
{
"id": "Antarctica/Syowa",
"value": "(UTC+03:00) Antarctica/Syowa"
},
{
"id": "Africa/Dar_es_Salaam",
"value": "(UTC+03:00) Africa/Dar_es_Salaam"
},
{
"id": "Africa/Djibouti",
"value": "(UTC+03:00) Africa/Djibouti"
},
{
"id": "Africa/Addis_Ababa",
"value": "(UTC+03:00) Africa/Addis_Ababa"
},
{
"id": "Africa/Nairobi",
"value": "(UTC+03:00) Africa/Nairobi"
},
{
"id": "Africa/Mogadishu",
"value": "(UTC+03:00) Africa/Mogadishu"
},
{
"id": "Europe/Bucharest",
"value": "(UTC+03:00) Europe/Bucharest"
},
{
"id": "Europe/Kiev",
"value": "(UTC+03:00) Europe/Kiev"
},
{
"id": "Africa/Kampala",
"value": "(UTC+03:00) Africa/Kampala"
},
{
"id": "Europe/Istanbul",
"value": "(UTC+03:00) Europe/Istanbul"
},
{
"id": "Europe/Helsinki",
"value": "(UTC+03:00) Europe/Helsinki"
},
{
"id": "Europe/Kirov",
"value": "(UTC+03:00) Europe/Kirov"
},
{
"id": "Asia/Gaza",
"value": "(UTC+03:00) Asia/Gaza"
},
{
"id": "Asia/Nicosia",
"value": "(UTC+03:00) Asia/Nicosia"
},
{
"id": "Asia/Jerusalem",
"value": "(UTC+03:00) Asia/Jerusalem"
},
{
"id": "Europe/Tallinn",
"value": "(UTC+03:00) Europe/Tallinn"
},
{
"id": "Europe/Zaporozhye",
"value": "(UTC+03:00) Europe/Zaporozhye"
},
{
"id": "Indian/Mayotte",
"value": "(UTC+03:00) Indian/Mayotte"
},
{
"id": "Europe/Sofia",
"value": "(UTC+03:00) Europe/Sofia"
},
{
"id": "Asia/Qatar",
"value": "(UTC+03:00) Asia/Qatar"
},
{
"id": "Europe/Simferopol",
"value": "(UTC+03:00) Europe/Simferopol"
},
{
"id": "Europe/Uzhgorod",
"value": "(UTC+03:00) Europe/Uzhgorod"
},
{
"id": "Asia/Damascus",
"value": "(UTC+03:00) Asia/Damascus"
},
{
"id": "Asia/Famagusta",
"value": "(UTC+03:00) Asia/Famagusta"
},
{
"id": "Indian/Antananarivo",
"value": "(UTC+03:00) Indian/Antananarivo"
},
{
"id": "Indian/Comoro",
"value": "(UTC+03:00) Indian/Comoro"
},
{
"id": "Asia/Riyadh",
"value": "(UTC+03:00) Asia/Riyadh"
},
{
"id": "Asia/Kuwait",
"value": "(UTC+03:00) Asia/Kuwait"
},
{
"id": "Asia/Beirut",
"value": "(UTC+03:00) Asia/Beirut"
},
{
"id": "Europe/Vilnius",
"value": "(UTC+03:00) Europe/Vilnius"
},
{
"id": "Europe/Riga",
"value": "(UTC+03:00) Europe/Riga"
},
{
"id": "Europe/Volgograd",
"value": "(UTC+03:00) Europe/Volgograd"
},
{
"id": "Asia/Tbilisi",
"value": "(UTC+04:00) Asia/Tbilisi"
},
{
"id": "Indian/Mauritius",
"value": "(UTC+04:00) Indian/Mauritius"
},
{
"id": "Europe/Astrakhan",
"value": "(UTC+04:00) Europe/Astrakhan"
},
{
"id": "Asia/Muscat",
"value": "(UTC+04:00) Asia/Muscat"
},
{
"id": "Asia/Baku",
"value": "(UTC+04:00) Asia/Baku"
},
{
"id": "Indian/Reunion",
"value": "(UTC+04:00) Indian/Reunion"
},
{
"id": "Europe/Ulyanovsk",
"value": "(UTC+04:00) Europe/Ulyanovsk"
},
{
"id": "Asia/Yerevan",
"value": "(UTC+04:00) Asia/Yerevan"
},
{
"id": "Europe/Saratov",
"value": "(UTC+04:00) Europe/Saratov"
},
{
"id": "Indian/Mahe",
"value": "(UTC+04:00) Indian/Mahe"
},
{
"id": "Europe/Samara",
"value": "(UTC+04:00) Europe/Samara"
},
{
"id": "Asia/Dubai",
"value": "(UTC+04:00) Asia/Dubai"
},
{
"id": "Asia/Kabul",
"value": "(UTC+04:30) Asia/Kabul"
},
{
"id": "Asia/Tehran",
"value": "(UTC+04:30) Asia/Tehran"
},
{
"id": "Asia/Karachi",
"value": "(UTC+05:00) Asia/Karachi"
},
{
"id": "Asia/Dushanbe",
"value": "(UTC+05:00) Asia/Dushanbe"
},
{
"id": "Indian/Kerguelen",
"value": "(UTC+05:00) Indian/Kerguelen"
},
{
"id": "Asia/Tashkent",
"value": "(UTC+05:00) Asia/Tashkent"
},
{
"id": "Indian/Maldives",
"value": "(UTC+05:00) Indian/Maldives"
},
{
"id": "Asia/Oral",
"value": "(UTC+05:00) Asia/Oral"
},
{
"id": "Asia/Aqtau",
"value": "(UTC+05:00) Asia/Aqtau"
},
{
"id": "Asia/Yekaterinburg",
"value": "(UTC+05:00) Asia/Yekaterinburg"
},
{
"id": "Asia/Aqtobe",
"value": "(UTC+05:00) Asia/Aqtobe"
},
{
"id": "Asia/Ashgabat",
"value": "(UTC+05:00) Asia/Ashgabat"
},
{
"id": "Asia/Qyzylorda",
"value": "(UTC+05:00) Asia/Qyzylorda"
},
{
"id": "Asia/Atyrau",
"value": "(UTC+05:00) Asia/Atyrau"
},
{
"id": "Asia/Samarkand",
"value": "(UTC+05:00) Asia/Samarkand"
},
{
"id": "Antarctica/Mawson",
"value": "(UTC+05:00) Antarctica/Mawson"
},
{
"id": "Asia/Kolkata",
"value": "(UTC+05:30) Asia/Kolkata"
},
{
"id": "Asia/Colombo",
"value": "(UTC+05:30) Asia/Colombo"
},
{
"id": "Asia/Kathmandu",
"value": "(UTC+05:45) Asia/Kathmandu"
},
{
"id": "Indian/Chagos",
"value": "(UTC+06:00) Indian/Chagos"
},
{
"id": "Asia/Almaty",
"value": "(UTC+06:00) Asia/Almaty"
},
{
"id": "Asia/Qostanay",
"value": "(UTC+06:00) Asia/Qostanay"
},
{
"id": "Asia/Urumqi",
"value": "(UTC+06:00) Asia/Urumqi"
},
{
"id": "Antarctica/Vostok",
"value": "(UTC+06:00) Antarctica/Vostok"
},
{
"id": "Asia/Dhaka",
"value": "(UTC+06:00) Asia/Dhaka"
},
{
"id": "Asia/Omsk",
"value": "(UTC+06:00) Asia/Omsk"
},
{
"id": "Asia/Thimphu",
"value": "(UTC+06:00) Asia/Thimphu"
},
{
"id": "Asia/Bishkek",
"value": "(UTC+06:00) Asia/Bishkek"
},
{
"id": "Asia/Yangon",
"value": "(UTC+06:30) Asia/Yangon"
},
{
"id": "Indian/Cocos",
"value": "(UTC+06:30) Indian/Cocos"
},
{
"id": "Asia/Pontianak",
"value": "(UTC+07:00) Asia/Pontianak"
},
{
"id": "Asia/Phnom_Penh",
"value": "(UTC+07:00) Asia/Phnom_Penh"
},
{
"id": "Indian/Christmas",
"value": "(UTC+07:00) Indian/Christmas"
},
{
"id": "Asia/Novokuznetsk",
"value": "(UTC+07:00) Asia/Novokuznetsk"
},
{
"id": "Asia/Jakarta",
"value": "(UTC+07:00) Asia/Jakarta"
},
{
"id": "Asia/Hovd",
"value": "(UTC+07:00) Asia/Hovd"
},
{
"id": "Asia/Ho_Chi_Minh",
"value": "(UTC+07:00) Asia/Ho_Chi_Minh"
},
{
"id": "Asia/Bangkok",
"value": "(UTC+07:00) Asia/Bangkok"
},
{
"id": "Asia/Krasnoyarsk",
"value": "(UTC+07:00) Asia/Krasnoyarsk"
},
{
"id": "Asia/Novosibirsk",
"value": "(UTC+07:00) Asia/Novosibirsk"
},
{
"id": "Asia/Barnaul",
"value": "(UTC+07:00) Asia/Barnaul"
},
{
"id": "Antarctica/Davis",
"value": "(UTC+07:00) Antarctica/Davis"
},
{
"id": "Asia/Tomsk",
"value": "(UTC+07:00) Asia/Tomsk"
},
{
"id": "Asia/Vientiane",
"value": "(UTC+07:00) Asia/Vientiane"
},
{
"id": "Asia/Singapore",
"value": "(UTC+08:00) Asia/Singapore"
},
{
"id": "Asia/Macau",
"value": "(UTC+08:00) Asia/Macau"
},
{
"id": "Asia/Kuala_Lumpur",
"value": "(UTC+08:00) Asia/Kuala_Lumpur"
},
{
"id": "Asia/Choibalsan",
"value": "(UTC+08:00) Asia/Choibalsan"
},
{
"id": "Asia/Ulaanbaatar",
"value": "(UTC+08:00) Asia/Ulaanbaatar"
},
{
"id": "Asia/Kuching",
"value": "(UTC+08:00) Asia/Kuching"
},
{
"id": "Asia/Brunei",
"value": "(UTC+08:00) Asia/Brunei"
},
{
"id": "Asia/Taipei",
"value": "(UTC+08:00) Asia/Taipei"
},
{
"id": "Asia/Hong_Kong",
"value": "(UTC+08:00) Asia/Hong_Kong"
},
{
"id": "Asia/Shanghai",
"value": "(UTC+08:00) Asia/Shanghai"
},
{
"id": "Australia/Perth",
"value": "(UTC+08:00) Australia/Perth"
},
{
"id": "Asia/Manila",
"value": "(UTC+08:00) Asia/Manila"
},
{
"id": "Asia/Makassar",
"value": "(UTC+08:00) Asia/Makassar"
},
{
"id": "Asia/Irkutsk",
"value": "(UTC+08:00) Asia/Irkutsk"
},
{
"id": "Australia/Eucla",
"value": "(UTC+08:45) Australia/Eucla"
},
{
"id": "Asia/Dili",
"value": "(UTC+09:00) Asia/Dili"
},
{
"id": "Asia/Chita",
"value": "(UTC+09:00) Asia/Chita"
},
{
"id": "Asia/Jayapura",
"value": "(UTC+09:00) Asia/Jayapura"
},
{
"id": "Asia/Tokyo",
"value": "(UTC+09:00) Asia/Tokyo"
},
{
"id": "Asia/Khandyga",
"value": "(UTC+09:00) Asia/Khandyga"
},
{
"id": "Asia/Yakutsk",
"value": "(UTC+09:00) Asia/Yakutsk"
},
{
"id": "Asia/Seoul",
"value": "(UTC+09:00) Asia/Seoul"
},
{
"id": "Asia/Pyongyang",
"value": "(UTC+09:00) Asia/Pyongyang"
},
{
"id": "Pacific/Palau",
"value": "(UTC+09:00) Pacific/Palau"
},
{
"id": "Australia/Darwin",
"value": "(UTC+09:30) Australia/Darwin"
},
{
"id": "Pacific/Port_Moresby",
"value": "(UTC+10:00) Pacific/Port_Moresby"
},
{
"id": "Asia/Vladivostok",
"value": "(UTC+10:00) Asia/Vladivostok"
},
{
"id": "Asia/Ust-Nera",
"value": "(UTC+10:00) Asia/Ust-Nera"
},
{
"id": "Antarctica/DumontDUrville",
"value": "(UTC+10:00) Antarctica/DumontDUrville"
},
{
"id": "Australia/Lindeman",
"value": "(UTC+10:00) Australia/Lindeman"
},
{
"id": "Australia/Brisbane",
"value": "(UTC+10:00) Australia/Brisbane"
},
{
"id": "Pacific/Saipan",
"value": "(UTC+10:00) Pacific/Saipan"
},
{
"id": "Pacific/Guam",
"value": "(UTC+10:00) Pacific/Guam"
},
{
"id": "Pacific/Chuuk",
"value": "(UTC+10:00) Pacific/Chuuk"
},
{
"id": "Australia/Broken_Hill",
"value": "(UTC+10:30) Australia/Broken_Hill"
},
{
"id": "Australia/Adelaide",
"value": "(UTC+10:30) Australia/Adelaide"
},
{
"id": "Pacific/Guadalcanal",
"value": "(UTC+11:00) Pacific/Guadalcanal"
},
{
"id": "Pacific/Noumea",
"value": "(UTC+11:00) Pacific/Noumea"
},
{
"id": "Antarctica/Casey",
"value": "(UTC+11:00) Antarctica/Casey"
},
{
"id": "Pacific/Kosrae",
"value": "(UTC+11:00) Pacific/Kosrae"
},
{
"id": "Antarctica/Macquarie",
"value": "(UTC+11:00) Antarctica/Macquarie"
},
{
"id": "Pacific/Pohnpei",
"value": "(UTC+11:00) Pacific/Pohnpei"
},
{
"id": "Australia/Sydney",
"value": "(UTC+11:00) Australia/Sydney"
},
{
"id": "Pacific/Efate",
"value": "(UTC+11:00) Pacific/Efate"
},
{
"id": "Australia/Melbourne",
"value": "(UTC+11:00) Australia/Melbourne"
},
{
"id": "Australia/Lord_Howe",
"value": "(UTC+11:00) Australia/Lord_Howe"
},
{
"id": "Australia/Hobart",
"value": "(UTC+11:00) Australia/Hobart"
},
{
"id": "Asia/Srednekolymsk",
"value": "(UTC+11:00) Asia/Srednekolymsk"
},
{
"id": "Asia/Sakhalin",
"value": "(UTC+11:00) Asia/Sakhalin"
},
{
"id": "Pacific/Bougainville",
"value": "(UTC+11:00) Pacific/Bougainville"
},
{
"id": "Asia/Magadan",
"value": "(UTC+11:00) Asia/Magadan"
},
{
"id": "Pacific/Funafuti",
"value": "(UTC+12:00) Pacific/Funafuti"
},
{
"id": "Asia/Kamchatka",
"value": "(UTC+12:00) Asia/Kamchatka"
},
{
"id": "Pacific/Wake",
"value": "(UTC+12:00) Pacific/Wake"
},
{
"id": "Pacific/Tarawa",
"value": "(UTC+12:00) Pacific/Tarawa"
},
{
"id": "Pacific/Norfolk",
"value": "(UTC+12:00) Pacific/Norfolk"
},
{
"id": "Pacific/Fiji",
"value": "(UTC+12:00) Pacific/Fiji"
},
{
"id": "Pacific/Nauru",
"value": "(UTC+12:00) Pacific/Nauru"
},
{
"id": "Asia/Anadyr",
"value": "(UTC+12:00) Asia/Anadyr"
},
{
"id": "Pacific/Majuro",
"value": "(UTC+12:00) Pacific/Majuro"
},
{
"id": "Pacific/Kwajalein",
"value": "(UTC+12:00) Pacific/Kwajalein"
},
{
"id": "Pacific/Wallis",
"value": "(UTC+12:00) Pacific/Wallis"
},
{
"id": "Pacific/Auckland",
"value": "(UTC+13:00) Pacific/Auckland"
},
{
"id": "Pacific/Apia",
"value": "(UTC+13:00) Pacific/Apia"
},
{
"id": "Antarctica/McMurdo",
"value": "(UTC+13:00) Antarctica/McMurdo"
},
{
"id": "Pacific/Kanton",
"value": "(UTC+13:00) Pacific/Kanton"
},
{
"id": "Pacific/Tongatapu",
"value": "(UTC+13:00) Pacific/Tongatapu"
},
{
"id": "Pacific/Fakaofo",
"value": "(UTC+13:00) Pacific/Fakaofo"
},
{
"id": "Pacific/Chatham",
"value": "(UTC+13:45) Pacific/Chatham"
},
{
"id": "Pacific/Kiritimati",
"value": "(UTC+14:00) Pacific/Kiritimati"
}
]
​​