Como subtrair/diminuir dias de uma data com PHP?
Veja exemplo de código para realizar subtração de dias de uma data usando PHP
Índice
Exibir a data atual em PHP
Diminuir dias a data atual em php
Diminuir dias uma data específica
Existem algumas maneiras de somar dias em uma data usando php. Vamos mostrar as alternativas para programação estrutural acompanhada de uma orientada a objetos.
Exibir a data atual em PHP
<?PHP
echo date('d/m/Y');
//Orientado a Objeto
$date = new DateTime();
echo $date->format( "d/m/Y" );
Diminuir dias a data atual em php
No Exemplo a seguir é diminuído 5 dias na data atual, basta substituir o 5 pelo número de dias que deseja subtrair a data para usar em seu código:
<?PHP
$nDias = 5;
echo date('d/m/Y', strtotime("-$nDias days"));
// Orientado a Objetos
$date = new DateTime("-$nDias days");
echo $date->format( "d/m/Y" );
Diminuindo 2 meses a data atual:
<?PHP
$nMeses = 2;
echo date('d/m/Y', strtotime("-$nMeses months"));
// Mesmo código orientado a objetos
$date = new DateTime("-$nMeses months");
echo $date->format( "d/m/Y" );
Diminuir dias uma data específica
O exemplo a seguir diminui 10 dias da data de 01/01/2020, lembrando que a variável $data está no formato AAAA-MM-DD:
<?php
$data = '2020-01-01';
$nDias= 10;
// Orientado a Objeto
$date = new DateTime($data);
$date->add(new DateInterval("P".$nDias."D"));
echo $date->format('d/m/Y') . "\n";
// procedural
$date = date_create($data);
date_add($date, date_interval_create_from_date_string(-$nDias.' days'));
echo date_format($date, 'd/m/Y');
Veja outros exemplos de manipulação de datas em php aqui.