As diferenças entre o tratamento do fuso horário da data

9

Existem várias opções para manipulação de fuso horário, fuso horário do site, hora da data, fuso horário do usuário, UTC e nenhuma conversão de fuso horário. Quais são as diferenças entre eles?

Um caso seria uma transmissão de televisão em que todos no mundo experimentariam simultaneamente. O fuso horário do usuário estaria correto de usar? Se a emissora colocasse 20:00 enquanto morava em Nova York, alguém na Califórnia experimentaria isso às 17:00.

Ou, o caso, um slam de poesia está acontecendo na cidade de Nova York e qualquer pessoa que queira experimentá-lo terá que estar lá fisicamente às 20:00, o que significa que pode estar acontecendo às 17:00 na Califórnia, mas isso não importa para o público. pessoa na Califórnia. O que importa é que eles estão no local às 20:00 em Nova York, para que o horário não mude, não importa onde o usuário esteja ou a que horas do fuso horário a poesia está acontecendo.

Adam S
fonte

Respostas:

13

A página de documentação do módulo Data descreve bem a diferença entre as 5 opções.

A partir dessa página:

Existem 5 opções diferentes para o campo Tratamento de fuso horário:

  1. Fuso horário do site - Ao inserir dados no campo, presume-se que os dados inseridos estejam no fuso horário do site. Quando os dados são salvos no banco de dados, eles são convertidos para UTC. Quando recuperados do banco de dados, os dados são convertidos no fuso horário do Site para usuários anônimos ou no fuso horário do Usuário para usuários conectados quando os fusos horários configuráveis ​​pelo usuário estão ativados.
  2. Fuso horário da data - com esta opção ativada, o campo data adiciona uma caixa de seleção para especificar explicitamente o fuso horário da data digitada. Quando a data é salva no banco de dados, ela não é convertida e as informações de fuso horário são salvas com a data. Quando recuperada do banco de dados, nenhuma conversão é executada e a data é exibida exatamente como inserida.
  3. Fuso horário do usuário - Ao inserir dados no campo, presume-se que os dados inseridos estejam no fuso horário do usuário. Quando os dados são salvos no banco de dados, eles são convertidos para UTC. Quando recuperados do banco de dados, os dados são convertidos no fuso horário do Site para usuários anônimos ou no fuso horário do Usuário para usuários conectados quando os fusos horários configuráveis ​​pelo usuário estão ativados.
  4. UTC - Ao inserir dados no campo, presume-se que os dados inseridos estejam no fuso horário UTC. Quando os dados são salvos no banco de dados, eles são convertidos para UTC (por exemplo, nenhuma conversão é necessária). Quando recuperados do banco de dados, os dados são convertidos no fuso horário do Site para usuários anônimos ou no fuso horário do Usuário para usuários conectados quando os fusos horários configuráveis ​​pelo usuário estão ativados.
  5. Sem conversão de fuso horário - A data inserida não é convertida quando salva no banco de dados. Quando recuperados do banco de dados, os dados NÃO são convertidos e são exibidos exatamente como inseridos.
jhedstrom
fonte