Como converter um formato de data em outro em PHP

  1. Utilize date() e strtotime() Funções para converter um formato de data para outro em PHP
  2. Utilize createFromFormat() e format() Funções para converter um formato de data para outro em PHP

Neste artigo, vamos introduzir métodos para converter um formato Data para outro em PHP.

  • Utilizando a função date() e strtotime().
  • Utilizando a função createFromFormat() e format()

Utilize date() e strtotime() Funções para converter um formato de data para outro em PHP

A função date() converte um carimbo de tempo em uma data. A sintaxe correta para utilizar esta função é a seguinte

date( $format, $timestamp);

O $format é o formato específico no qual a data é convertida.

O $timestamp é um parâmetro opcional. Ele dá a data de acordo com o carimbo da hora passada. Se for omitido, então obteremos a data atual.

A função strtotime() é uma função embutida no PHP. Esta função converte uma data para a hora. A sintaxe correta para utilizar esta função é a seguinte.

strtotime($dateString, $timeNow);

A $dateString é um parâmetro obrigatório, e é a representação em string de uma data.

$timeNow é um parâmetro opcional. É o carimbo da hora que é utilizado para calcular datas relativas.

<?php
$originalDate = "2020-04-29";
//original date is in format YYYY-mm-dd
$timestamp = strtotime($originalDate); 
$newDate = date("m-d-Y", $timestamp );
echo "The new date is $newDate.";
?>

Temos utilizado as funções date() e strtotime() para converter um formato date para outro. A função strtotime() converteu a data original para um carimbo de data/hora. Este carimbo de hora é então convertido para date do formato requerido utilizando a função date().

Resultado:

The new date is 04-29-2020.

Utilize createFromFormat() e format() Funções para converter um formato de data para outro em PHP

A função createFromFormat() é uma função embutida no PHP. Esta função converte um carimbo de data e hora para um objeto DateTime. A sintaxe correta para utilizar esta função é a seguinte.

DateTime::createFromFormat($format, $time, $timezone);

A variável $format é o formato da data, $time é a hora ou data dada em string, e $timezone dá o fuso horário. Os dois primeiros parâmetros são os parâmetros obrigatórios.

A função format() é utilizada para formatar uma data para o formato requerido. A sintaxe correta para utilizar esta função é

$datetimeObject->format($formatString); 

O parâmetro $formatString especifica o formato requerido.

<?php
$originalDate = "2020-04-29";
//original date is in format YYYY-mm-dd
$DateTime = DateTime::createFromFormat('Y-m-d', $originalDate);
$newDate = $DateTime->format('m-d-Y');
echo "The new date is $newDate.";
?>

Aqui, criamos um objeto DateTime utilizando a função createFromFormat(). O objeto DateTime chama então a função format() para converter um formato data para outro.

Resultado:

The new date is 04-29-2020.

Artigo relacionado - PHP Date

  • Como obter a data e hora atual em PHP
  • Como converter String para Data e Data/Hora em PHP