Función date_sub
La función date_sub resta un intervalo de tiempo de un objeto de fecha.
El primer parámetro acepta un objeto DateTime, el segundo - un objeto DateInterval.
Sintaxis
date_sub(DateTime $object, DateInterval $interval);
Ejemplo
Restemos 10 días de la fecha especificada:
<?php
$date = new DateTime('2025-06-15');
$interval = new DateInterval('P10D');
date_sub($date, $interval);
echo $date->format('Y-m-d');
?>
Resultado de ejecutar el código:
'2025-06-05'
Ejemplo
Restemos 1 año y 2 meses de la fecha:
<?php
$date = new DateTime('2025-03-20');
$interval = new DateInterval('P1Y2M');
date_sub($date, $interval);
echo $date->format('Y-m-d');
?>
Resultado de ejecutar el código:
'2024-01-20'
Ejemplo
La función date_create devuelve un objeto DateTime.
Se puede reescribir el código en estilo mixto,
parcialmente OOP y parcialmente funcional:
<?php
$date = date_create('2025-03-20');
$interval = new DateInterval('P1Y2M');
date_sub($date, $interval);
echo date_format($date, 'Y-m-d');
?>
Resultado de ejecutar el código:
'2024-01-20'