Menu
Coddy logo textTech

Formateo de objetos DateTime

Parte de la sección Lógica y Flujo del Journey de PHP de Coddy — lección 49 de 68.

Ahora que tienes un objeto DateTime, necesitas convertirlo en un formato de cadena legible. El método format() es tu herramienta para transformar un objeto DateTime en cualquier formato de fecha o hora que necesites para fines de visualización.

El método format() utiliza exactamente los mismos caracteres de formato que aprendiste con la función date(). Esta consistencia facilita la aplicación de tus conocimientos existentes a los objetos DateTime. Llamas al método directamente en tu objeto DateTime y pasas la cadena de formato como parámetro.

<?php
$now = new DateTime();
echo $now->format("Y-m-d");     // Salida: 2024-03-15
echo $now->format("H:i:s");     // Salida: 14:30:25
echo $now->format("l, F j, Y"); // Salida: Friday, March 15, 2024
?>

El enfoque orientado a objetos con format() proporciona una mejor organización del código, especialmente cuando trabajas con la misma fecha varias veces. Creas el objeto DateTime una vez y puedes formatearlo de diferentes maneras a lo largo de tu código sin llamar repetidamente a funciones procedimentales.

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

challenge icon

Desafío

Fácil

Recibirás dos entradas: una cadena de fecha en el formato Y-m-d H:i:s y una cadena de formato. La primera entrada es una fecha y hora específica (ejemplo: 2024-03-15 14:30:25), y la segunda entrada es una cadena de formato que especifica cómo mostrar la fecha (ejemplo: l, F j, Y).

Lee ambas entradas, crea un objeto DateTime utilizando la cadena de fecha, utiliza el método format() para transformar el objeto DateTime de acuerdo con la cadena de formato proporcionada y muestra el resultado formateado.

Formato de entrada:

  • Primera línea: Una cadena de fecha en el formato Y-m-d H:i:s (ejemplo: 2024-03-15 14:30:25)
  • Segunda línea: Una cadena de formato (ejemplo: l, F j, Y o H:i:s o Y-m-d)

Salida esperada: La fecha formateada de acuerdo con la cadena de formato proporcionada

Hoja de referencia

El método format() convierte un objeto DateTime en un formato de cadena legible utilizando los mismos caracteres de formato que la función date():

<?php
$now = new DateTime();
echo $now->format("Y-m-d");     // Salida: 2024-03-15
echo $now->format("H:i:s");     // Salida: 14:30:25
echo $now->format("l, F j, Y"); // Salida: Friday, March 15, 2024
?>

El enfoque orientado a objetos le permite crear un objeto DateTime una vez y formatearlo de múltiples maneras sin llamar repetidamente a funciones procedimentales.

Pruébalo tú mismo

<?php
// Leer la cadena de fecha
$dateString = trim(fgets(STDIN));

// Leer la cadena de formato
$formatString = trim(fgets(STDIN));

// TODO: Escribe tu código a continuación
// Crear un objeto DateTime y formatearlo de acuerdo con la cadena de formato


// Imprimir la fecha formateada
echo $formattedDate;
?>
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Lógica y Flujo