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 funções procedurais como date(), time() e strtotime() funcionem bem para operações básicas com datas, PHP oferece uma abordagem mais poderosa e flexível por meio da classe DateTime. Esse 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 manipular e formatar usando vários métodos. Diferentemente das 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 nele.

<?php
$now = new DateTime();
echo $now->format('Y-m-d H:i:s');  // Outputs something like: 2024-03-15 14:30:25
?>

Criar um novo objeto DateTime sem nenhum parâmetro o define automaticamente como 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 várias operações na mesma data. Você achará isso particularmente útil ao trabalhar com cálculos de datas mais complexos e requisitos de formatação.

challenge icon

Desafio

Fácil

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

Leia a date string do input, crie um DateTime object usando essa date string como parâmetro e imprima o DateTime object diretamente.

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

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

Saída esperada: A date e a 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

Pratique por conta própria: Compilador de PHP online