Data e Hora em PHP

O domínio na manipulação de datas e horas no PHP é fundamental, pois a maioria dos sistemas utilizam essas informações para controlar o seu funcionamento. Neste post veja data e Hora em PHP.

Exemplos:

 <?php
  echo date("d/m/Y H:i:s"); //Mostra 11/05/2020 21:43:16 (se a data fosse 11/05/2020 às 21:43:16)
 ?>

Para mostrar o total de segundos, deste 1º de janeiro de 1970 até a data atual, utilizamos a função time():

echo time(); //Mostra 1589244560 (se a data fosse 11/05/2020)

Para conveter uma data qualquer para o formato timestamp (um instante único, um ponto específico na linha do tempo e seu valor corresponde a uma determinada quantidade de tempo decorrida a partir de um instante inicial):

echo strtotime("2020-05-11"); //Mostra 1589166000 (se a data fosse 11/05/2020)

Para converter um timestamp em data:

 $st = strtotime("2020-05-11");
 echo date("l, d/m/y", $st); //Mostra Monday, 11/05/20  (se a data fosse 11/05/2020)
 echo date("now"); //Mostra Monday, 11/05/20  (se a data fosse 11/05/2020)
 
 //Mostra a data atual: Monday, 11/05/20  (se a data fosse 11/05/2020)
 $st = strtotime("now");
 echo date("l, d/m/y", $st);
 
 //Mostra a data de amanhã: Tuesday, 12/05/20  (se a data de hoje fosse 11/05/2020)
 $st = strtotime("+1 day");
 echo date("l, d/m/y", $st);
 
 //Mostra a data de uma semana a diante: Monday, 18/05/20  (se a data de hoje fosse 11/05/2020)
 $st = strtotime("+1 week");
 echo date("l, d/m/y", $st);
 
 //obs.: o argumento "l" mostra o dia da semana
 //ver mais em https://www.php.net/manual/pt_BR/function.date.php

A função setlocale especifica o tipo de localidade desejada para realizar operações de uma categoria.

O primeiro parâmetro representa a categoria de operações:

LC_ALL – para especificar a localidade para todas as categorias.
LC_COLLATE – para especificar as regras da localidade para comparação de textos.
LC_CTYPE – para especificar as regras da localidade para classificação/conversão de caracteres.
LC_MESSAGES – para especificar o idioma das mensagens de log.
LC_MONETARY – para especificar a notação monetária de uma localidade.
LC_NUMERIC – para especificar a notação numérica de uma localidade.
LC_TIME – para especificar a notação de data/tempo de uma localidade.

Para mais detalhes, acesse https://www.php.net/manual/en/function.strftime.php.

 //Parâmetros da função - configuração para português
 setlocale(LC_ALL, "pt_BR", "pt_BR.utf-8", "portuguese");
 
 echo strftime("%A %B"); //Mostra "Terça-Feira, Maio" caso a data seja 12/05/2020

Podemos também utilizar a classe DateTime para manipular datas:

  //Cria-se uma instância da classe (objeto $dt)  
  $dt = new DateTime();
  
  //Para acessarmos os métodos da classe DateTime, utilizamos "->":
  echo $dt->format("d/m/Y H:i:s");//Acessamos o método format()
  
  //Acima será mostrado o padrão "12/05/2020 21:52:21" 

Para acrescentarmos, por exemplo, quinze dias a uma data específica:

 $dt = new DateTime();
 $periodo = new DateInterval("P15D"); //Criamos a variável $periodo para armazenar o acréscimo (15 dias "P15D")
 $dt->add($periodo); //Somamos o acréscimo (15 dias) a data atual $dt
 echo $dt->format("d/m/Y H:i:s"); //Mostra a data com o acréscimo
QUER APRENDER PHP ORIENTADO A OBJETOS OU APERFEIÇOAR O QUE JÁ SABE?

Então conheça o curso online que já ajudou milhares de pessoas a aprender a programar e desenvolver seus próprios projetos do ZERO e usando orientação a objetos de uma forma fácil de entender.

CLIQUE NA IMAGEM ABAIXO E SAIBA MAIS:

CLIQUE AQUI E SAIBA MAIS

Variáveis em PHP

Dúvidas ou sugestões? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits

Tags: | |

Sobre o Autor

Benedito Silva Júnior
Benedito Silva Júnior

Bacharel em Sistemas de Informação pelo Instituto Paulista de Pesquisa e Ensino IPEP. Apaixonado por tecnologias e games do tempo da vovó!

0 Comentários

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *