Ao usar PHP, podemos nos deparar com a necessidade de pegar o horário atual, somente o horário, sem a data. Isso é importante por diversas razões, como:
- registrar o momento exato em que um evento ocorreu
- agendar tarefas
- para exibir informações atualizadas para os usuários
- realizar cálculos de tempo, como por exemplo calcular a diferença entre duas datas.
Assim como fizemos para pegar a data atual, também podemos usar a função date().
Veja também: PHP: Alterar Formato de Data para Banco de Dados
Usando a função date() para pegar o horário atual
A função date pode ser usada para formatar a data e hora atual de acordo com diferentes formatos.
echo date('H:i:s'); // Exibe a hora atual no formato HH:MM:S
O resultado seria,
14:44:18
Usando a classe DateTime
A classe DateTime fornece uma maneira mais robusta de trabalhar com datas e horas.
$dateTime = new DateTime(); echo $dateTime->format('H:i:s'); // Exibe a hora atual no formato HH:MM:SS
O resultado seria,
14:44:18
Outra alternativa usando SQL
Outra alternativa seria usar SQL. Podemos usar CURRENT_TIMESTAMP() dentro de um INSERT.
INSERT INTO my_table (nome, data_hora)
VALUES ('John Doe', CURRENT_TIMESTAMP());
Mas, a função CURRENT_TIMESTAMP()
é usada para inserir a data e hora atual na coluna data_hora
da tabela my_table
.
Então, podemos usar DATE_FORMAT()
SELECT DATE_FORMAT(CURRENT_TIMESTAMP(), '%H:%i:%s');
ou, dentro de um insert
INSERT INTO my_table (nome, data_hora)
VALUES ('John Doe', DATE_FORMAT(CURRENT_TIMESTAMP(), '%H:%i:%s'));
Veja posts sobre PHP clicando aqui.