Hora de servidor e hora atual

SQL Server

PHP

03/11/2016

Pessoal, estou construindo um calendário de eventos, usando o php. Cheguei numa parte aqui que agora fiquei com dúvida. Essa dúvida é em relação a hora que devo salvar no banco.

Por exemplo, no caso deveria funcionar para o Brasil todo, mas com essa situação de fuso horário não sei o que é melhor fazer. Para salvar um evento no banco e armazenar o horário em que ele irá acontecer, devo salvar com o fuso horário do local ou com a hora do servidor?

Não sei se minha pergunta ficou muito clara, mas acho que já dá para entender o problema que estou enfrentando.

Pensem no seguinte caso:

Manaus e Rio de Janeiro tem fusos horários diferentes. Se um cara em Manaus salvar um evento que acontecerá no Rio de Janeiro e vice versa, os horários ficariam diferentes né. Queria entender como eu poderia resolver essa situação sem que acarrete problemas futuros. Qual o horário que devo salvar no banco?
Diego Silva

Diego Silva

Curtidas 0

Respostas

Andre Alves

Andre Alves

03/11/2016

Olá, Diego!

Acho que entendi. Eu faria o seguinte: salve com o horário do servidor e depois use a função date_default_timezone_set().

Por exemplo:

<?php
//Horário do servidor
echo date('H:i:s');
echo "<br>";
date_default_timezone_set("America/Sao_Paulo");
//Horário do Brasil - São Paulo
echo date('H:i:s');
echo "<br>";
date_default_timezone_set("America/Manaus");
//Horário do Brasil - Manaus
echo date('H:i:s');
?>


Segue a lista de fusos horários suportados: http://php.net/manual/pt_BR/timezones.php
GOSTEI 0
Diego Silva

Diego Silva

03/11/2016

Hum, ótima dica André, não havia pensado dessa forma. Vou tentar fazer desse jeito!
GOSTEI 0
POSTAR