Menu
Coddy logo textTech

Introdução ao Objeto DateTime

Parte da seção Lógica & Fluxo do Journey de PHP da Coddy — lição 48 de 68.

Embora as funções procedurais como date(), time() e strtotime() funcionem bem para operações básicas de data, o PHP oferece uma abordagem mais poderosa e flexível por meio da classe DateTime. Este método orientado a objetos proporciona melhor organização, sintaxe mais clara e funcionalidades mais avançadas para trabalhar com datas e horários.

A classe DateTime representa um momento específico no tempo como um objeto, que você pode então manipular e formatar usando vários métodos. Ao contrário de funções procedurais que trabalham com timestamps e strings de formato separados, um objeto DateTime encapsula tanto os dados de data/hora quanto as operações que você pode realizar neles.

<?php
$now = new DateTime();
echo $now;  // Exibe algo como: 2024-03-15 14:30:25
?>

A criação de um novo objeto DateTime sem nenhum parâmetro define-o automaticamente para a data e hora atuais.

A abordagem orientada a objetos torna seu código mais legível e fácil de manter, especialmente quando você precisa realizar múltiplas operações na mesma data. Você achará isso particularmente útil conforme trabalha com cálculos de data e requisitos de formatação mais complexos.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

challenge icon

Desafio

Fácil

Você receberá uma entrada: uma string de data no formato Y-m-d H:i:s (exemplo: 2024-03-15 14:30:25).

Leia a string de data de entrada, crie um objeto DateTime usando esta string de data como parâmetro e imprima o objeto DateTime diretamente.

Quando você cria um objeto DateTime com um parâmetro de string de data, ele representa aquele momento específico no tempo em vez da data e hora atuais. Simplesmente use echo no objeto para exibi-lo.

Formato de entrada: Uma linha contendo uma string de data no formato Y-m-d H:i:s (exemplo: 2024-03-15 14:30:25)

Saída esperada: O objeto DateTime exibido em seu formato padrão

Folha de consulta

A classe DateTime fornece uma abordagem orientada a objetos para trabalhar com datas e horas no PHP, oferecendo melhor organização e flexibilidade do que as funções procedurais.

Crie um objeto DateTime para a hora atual:

$now = new DateTime();

Crie um objeto DateTime para uma data específica:

$specificDate = new DateTime("2023-05-15");

Use o método format() para exibir datas em formatos específicos:

echo $now->format("Y-m-d H:i:s");  // 2024-03-15 14:30:25
echo $specificDate->format("Y-m-d");  // 2023-05-15

Experimente você mesmo

<?php
// Lê a entrada da string de data
$dateString = trim(fgets(STDIN));

// TODO: Criar um objeto DateTime usando a string de data e imprimi-lo


?>
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica & Fluxo