Volver a la página principal
martes 10 diciembre 2024
6

Comparar Fechas con Carbon en PHP

Carbon proporciona métodos directos y expresivos como isBefore(), isAfter() e isSame(). Además, incluye opciones avanzadas como comparar diferencias en unidades específicas (años, meses, días).

Ejemplo básico de comparación:

use Carbon\Carbon;

// Crear dos fechas
$fecha1 = Carbon::create(2023, 12, 1);
$fecha2 = Carbon::create(2024, 1, 1);

// Comparar si una fecha es anterior a otra
if ($fecha1->isBefore($fecha2)) {
    echo "La fecha1 es anterior a la fecha2.";
}

// Comparar si una fecha es posterior a otra
if ($fecha2->isAfter($fecha1)) {
    echo "La fecha2 es posterior a la fecha1.";
}

// Comparar si dos fechas son iguales
if ($fecha1->isSameDay($fecha2)) {
    echo "Ambas fechas son el mismo día.";
}

Métodos comunes para comparar fechas

1. isBefore()

Verifica si una fecha es anterior a otra.

$fecha1->isBefore($fecha2); // true o false

2. isAfter()

Verifica si una fecha es posterior a otra.

$fecha1->isAfter($fecha2); // true o false

3. isSameDay()

Verifica si dos fechas ocurren el mismo día.

$fecha1->isSameDay($fecha2); // true o false

4. equalTo()

Compara si dos fechas son exactamente iguales (incluyendo hora).

$fecha1->equalTo($fecha2); // true o false

Comparar diferencias entre fechas

Carbon facilita calcular diferencias específicas en años, meses, días, horas, minutos o segundos.

$fecha1 = Carbon::create(2023, 12, 1);
$fecha2 = Carbon::create(2024, 1, 1);

// Diferencia en días
echo $fecha1->diffInDays($fecha2); // Resultado: 31 días

// Diferencia en meses
echo $fecha1->diffInMonths($fecha2); // Resultado: 1 mes

Comparación en términos relativos:

echo $fecha1->diffForHumans($fecha2); 
// Resultado: "1 mes antes"

Referencia oficial

Para más información sobre métodos y casos de uso, consulta la documentación oficial de Carbon.

Etiquetas:
php
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer