PHP Date: manipulando datas e horários!

A linguagem de programação PHP vem com algumas funções integradas de data e hora que nos ajudarão a fazer tudo que necessitamos em relação a isso e com muito mais facilidade, conhecidas como PHP Date.

Elas são importantes, afinal, você pode desejar trabalhar com datas e horários ao desenvolver sites. Por exemplo, você pode precisar mostrar a data da última modificação em uma postagem ou mencionar há quanto tempo um leitor ou leitora escreveu algum comentário. Você também pode ter que mostrar uma contagem regressiva dos dias até um evento especial.

Este artigo vai ensinar a formatar a data e hora atuais em PHP. Você também aprenderá como obter o carimbo de data / hora de uma string de data e como adicionar e subtrair datas diferentes.

Confira:

O que é PHP Date?

É sempre importante recuperar date () e time () no PHP. É uma informação que precisa ser usada em todos os sistemas. Exemplos disso incluem quando um funcionário entra na empresa, ou quando o eclipse solar vai acontecer. 

A formatação e o fuso horário da função de data e hora são os principais fatores na determinação do carimbo de data / hora. Abaixo, você pode aprender o básico sobre as funções de data e hora. Assim,

  • Date(): É usado para formatação de data e hora. Isso torna o carimbo de data / hora mais legível.

Qual a sintaxe?

Sintaxe:

 Date (format, timestamp)

Como você pode ver aqui, temos dois parâmetros: ‘formato’ e carimbo de data / hora. 

O formato é um campo obrigatório. Aqui você deve especificar o formato do carimbo de data / hora. Por exemplo: y / m / d ou ymd.

O que é o Timestamp?

Timestamp é um campo opcional. Por padrão, ele seleciona a data e hora atuais.

Definição de carimbo de data / hora:

O carimbo de data / hora é basicamente uma sequência de caracteres que denota o tempo (data + hora) de determinado evento.

Como conseguir um encontro em PHP:

Para obter uma data simples, você tem um dos parâmetros de formato em data (). Poucos caracteres precisam ser especificados no parâmetro.

Exemplos:



<?php

echo "Hoje é dia: " . date("Y/m/d") . "<br>";

echo "Hoje é dia:" . date("Y.m.d") . "<br>";

echo "Hoje é dia:" . date("Y-m-d") . "<br>";

echo "Hoje é dia: " . date("l");

?>

Output:



Hoje é dia: 2016/02/02

Hoje é dia: 2016.02.02

Hoje é dia: 2016-02-02

Hoje é Terça-feira


Quais os parâmetros e valores da função PHP Date?

O parâmetro de formato da função date() é na verdade uma string que pode conter vários caracteres, permitindo que você gere uma string de data contendo vários componentes de data e hora, como dia da semana, AM ou PM, etc. Aqui estão algumas das datas-caracteres de formatação relacionados que são comumente usados ​​na string de formato:

  • d – Representa o dia do mês; dois dígitos com zeros à esquerda (01 ou 31)
  • D – Representa o dia da semana no texto como uma abreviatura (seg a dom)
  • m – Representa o mês em números com zeros à esquerda (01 ou 12)
  • M – Representa o mês no texto, abreviado (janeiro a dezembro)
  • y – Representa o ano em dois dígitos (08 ou 14)
  • Y – Representa o ano em quatro dígitos (2008 ou 2014)

As partes da data podem ser separadas inserindo outros caracteres, como hífens ( -), pontos ( .), barras ( /) ou espaços para adicionar formatação visual adicional.


<?php
echo date("d/m/Y") . "<br>";
echo date("d-m-Y") . "<br>";
echo date("d.m.Y");
?>

Dica: você pode usar a date()função PHP para atualizar automaticamente a duração dos direitos autorais em seu site, como:

Copyright &copy; 2010-<?php echo date("Y")?>

Da mesma forma, você pode usar os seguintes caracteres para formatar a string de hora:

  • h – Representa a hora no formato de 12 horas com zeros à esquerda (01 a 12)
  • H – Representa a hora no formato de 24 horas com zeros à esquerda (00 a 23)
  • i – Representa os minutos com zeros à esquerda (00 a 59)
  • s – Representa os segundos com zeros à esquerda (00 a 59)
  • a – Representa minúscula ante meridiem e pós-meridiem (am ou pm)
  • A – Representa Ante meridiem maiúsculo e Post meridiem (AM ou PM)

O código PHP no exemplo a seguir exibe a data em diferentes formatos:



<?php
echo date("h:i:s") . "<br>";
echo date("F d, Y h:i:s A") . "<br>";
echo date("h:i a");
?>

Parâmetros do dia

Parâmetros PHP Date dia

Parâmetros do mês

Parâmetros PHP Date Mês

Parâmetros do ano

Parâmetros ano
  • Todas as funções PHP date () usam o fuso horário padrão definido no arquivo php.ini
  • O fuso horário padrão também pode ser definido programaticamente usando scripts PHP.

Exemplos da função PHP Date na prática!

Formato da função PHP date (): nome completo do mês, dia, ano de quatro dígitos

Um formato de data comum que você vê com frequência é o nome do mês completo seguido pelo dia de 2 dígitos do mês e, em seguida, o ano de quatro dígitos (por exemplo, 12 de setembro de 2020).

Usando uma combinação de caracteres de formato, podemos obter qualquer data nesse formato, como:



data de eco ('F jS, Y', strtotime ($ alguma_data));
31 de dezembro de 2020

Aqui estão os significados dos caracteres de formato individual:

  • F – Nome do mês em texto completo.
  • j- Dia do mês com um ou dois dígitos, quando apropriado. Sem preenchimento de zeros à esquerda.
  • S – Sufixo de dois caracteres para um dia do mês de 2 dígitos.
  • Y – Ano de quatro dígitos.

Formato da função PHP date (): dia de dois dígitos, abreviação de mês de três letras, ano de quatro dígitos

Outro formato de data predominante que você vê é a maneira MM-seg-AAAA (por exemplo, 12-set-2020).



echo data ('dM-Y', strtotime ($ alguma_data));
31 de dezembro de 2020

Abaixo está o significado desses caracteres de formato específico:

  • d- Um dia do mês com dois dígitos (incluindo quaisquer zeros iniciais preenchidos ).
  • M – Abreviatura de três letras para um mês.
  • Y – Ano de quatro dígitos.

Formato da função PHP date (): mês de dois dígitos, dia de dois dígitos, ano de dois dígitos

Provavelmente, o formato de data mais comum é a variante de MM / DD / AA. Significado: mês de dois dígitos, dia de dois dígitos e ano de dois dígitos (por exemplo, 31/12/20). Este formato específico é talvez o mais fácil de configurar de todos os abordados até agora no artigo:



data de eco ('m / d / y', strtotime ($ alguma_data));
31/12/20

Os especificadores de formato de 3 caracteres para esta saída de data são:

  • m- Número do mês com quaisquer zeros iniciais preenchidos .
  • d- Um dia do mês com dois dígitos (incluindo quaisquer zeros iniciais preenchidos ).
  • y – Ano de dois dígitos.

Certifique-se de verificar todos os caracteres de formato disponíveis na documentação do formato de data e hora do PHP . Existem vários para escolher e tenho certeza de que você pode encontrar quaisquer que sejam as suas necessidades de formatação para valores de data.

Perguntas frequentes sobre  date() em PHP

Existem algumas perguntas comuns sobre como obter diferentes tipos de informações da função  date() em PHP que surgem de vez em quando. Tentaremos responder a todos eles aqui.

Como faço para obter o ano atual em PHP?

Você pode obter o ano atual em PHP usando  date(‘y’) ou  date(‘Y’). Usar um Y maiúsculo  fornecerá todos os dígitos do ano atual, como 2021 . Usar o y minúsculo fornecerá apenas os dois últimos dígitos, como 21 .

<?php<font></font>
<font></font>
echo date('Y');<font></font>
// 2021<font></font>
<font></font>
echo date('y');<font></font>
// 21<font></font>
<font></font>
?>

Qual é a maneira certa de obter o mês atual em PHP?

Existe quatro caracteres diferentes para obter o mês atual em PHP, dependendo do formato que você deseja. Você pode usar a letra maiúscula F para obter o nome completo do mês, como  fevereiro , ou obter o mês em um formato mais curto de três letras usando M .

Você também pode obter o mês atual em termos numéricos, utilizando  m  e  n , o que lhe dará o mês com e sem zeros à esquerda, respectivamente.



<?php<font></font>
<font></font>
echo date('F');<font></font>
// February<font></font>
<font></font>
echo date('M');<font></font>
// Feb<font></font>
<font></font>
echo date('m');<font></font>
// 02<font></font>
<font></font>
echo date('n');<font></font>
//  2<font></font>
<font></font>
?>

Como posso obter o dia da semana em PHP?

Você também pode obter o dia da semana em PHP usando quatro caracteres diferentes. O D maiúsculo  dará a você uma representação de três letras do dia da semana, como seg ou  ter . O uso de um l  (L minúsculo) fornecerá o nome completo do dia da semana.

Você pode obter um valor numérico entre  0  (para domingo) e  6  (para sábado) para os dias da semana usando  w .



<?php<font></font>
<font></font>
echo date('D');<font></font>
// Fri<font></font>
<font></font>
echo date('l');<font></font>
// Friday<font></font>
<font></font>
?>

Como obtenho a hora atual no formato de 12 horas em PHP?

Você pode obter a hora atual do dia no formato de 12 horas usando g  ou  h . Com  g , você obterá o tempo sem nenhum zero à esquerda, enquanto h  adicionará alguns zeros à esquerda. AM ou PM podem ser adicionados usando  um  (para letras minúsculas) ou  A  (para letras maiúsculas).

<?php<font></font>
<font></font>
echo date('g:i:s a');<font></font>
// 5:05:19 am<font></font>
<font></font>
echo date('h:i:s A');<font></font>
// 05:05:19 AM<font></font>
<font></font>
?>

Posso obter a hora atual no formato de 24 horas em PHP?

Usar os caracteres  G  e  H fornecerá a hora atual do dia no formato de 24 horas. Você não obterá zeros à esquerda com G , mas H vai adicionar zeros à esquerda.



<?php<font></font>
<font></font>
echo date('g:i:s a');<font></font>
// 5:05:19 am<font></font>
<font></font>
echo date('h:i:s A');<font></font>
// 05:05:19 AM<font></font>
<font></font>
?>

Qual é a melhor maneira de escapar caracteres em um formato de data?

A função date() aceita uma string como parâmetro, mas muitos caracteres têm um significado bem definido, como Y  para ano e  F para um mês. Isso significa que usar esses caracteres diretamente como parte de uma string nem sempre pode ter os resultados desejados.

Se você quiser que a função date() produza esses caracteres, você deve primeiro fazer o escape deles. Aqui está um exemplo: Alguns dos caracteres, como t , precisam de duas barras invertidas porque \ t  se destina a guias. Se possível, é aconselhável apenas colocar a string regular que você deseja ecoar fora de date(). Caso contrário, você estará escapando de muitos caracteres.



<?php<font></font>
<font></font>
echo 'Today is '.date("l the jS of F Y");<font></font>
// Today is Friday 2804Europe/Berlin 19th 2021f February 2021<font></font>
<font></font>
echo 'Today is '.date("l \\t\h\\e jS \of F Y");<font></font>
// Today is Friday the 19th of February 2021<font></font>
<font></font>
?>

Neste tutorial, aprendemos como produzir a data e hora atuais em um formato desejado usando a  função date(). Também vimos que o date()  pode ser usado para obter apenas o ano, mês e assim por diante. Depois disso, aprendemos como obter o carimbo de data / hora atual ou converter uma DateTime string válida  em um carimbo de data / hora. Por fim, aprendemos como adicionar ou subtrair um período de tempo de datas diferentes.

Cobrimos as principais  DateTime funções e métodos aqui. Definitivamente, você deve dar uma olhada na  documentação  para ler sobre as funções não abordadas no tutorial. 

Continue seus estudos em PHP conferindo agora sobre PHP array!