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 fornece 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 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->format('Y-m-d H:i:s');  // Gera algo como: 2024-03-15 14:30:25
?>

Criar 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 à medida que trabalha com cálculos de data e requisitos de formatação mais complexos.

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: A data e hora formatadas como Y-m-d H:i:s

Experimente você mesmo

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

// TODO: Crie um objeto DateTime usando a string de data e imprima-o


?>
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