Convertendo uma data em uma string

PHP:
Convertendo uma data em uma string

How to:

Vamos direto ao ponto: você precisa exibir ou salvar uma data em um formato personalizado em PHP? Use a classe DateTime e o método format. Aqui está como.

<?php
$data = new DateTime('now', new DateTimeZone('Europe/Lisbon'));
echo $data->format('d/m/Y H:i:s'); // saída: 15/03/2023 14:23:08
?>

Nota: d/m/Y H:i:s é um formato comum em Portugal, com dia, mês, ano, hora, minutos e segundos.

Deep Dive

Desde os primórdios do PHP, lidar com datas era possível, mas nem sempre direto. A função date() era a go-to para muitos desenvolvedores, mas tinha suas limitações, especialmente em relação a fusos horários e cálculos de data.

Com o PHP 5.2.0, veio o DateTime, uma melhoria monumental. Ele oferece orientação a objetos, manipulação de fuso horário e comparação de datas. Outra opção é o DateTimeImmutable, que, como o nome indica, retorna um objeto imutável sempre que você modifica a data.

Manejar fusos horários é fácil com DateTime. Basta passar o fuso desejado como parâmetro no construtor.

Alternativa tradicional: usar date() e strtotime().

echo date('d/m/Y H:i:s', strtotime('now')); // mesma saída anterior

Mas seja cauteloso — strtotime() pode fazer mágicas com strings em inglês, mas não necessariamente entenderá outros idiomas com a mesma facilidade.

See Also

Para mergulhar fundo nas possibilidades de DateTime e DateTimeImmutable, confira a documentação oficial do PHP:

E para entender todos os formatos de saída possíveis com o método format:

Espero que isso torne sua vida com PHP e datas um pouquinho mais fácil!