Calcular diferença entre duas datas com PHP

293d atrás

0 0

O objeto tipo DateTime no #PHP possui o método diff, e é com ele que calcularemos a diferença entre duas datas.

Primeiro, vamos instanciar duas datas:

$date1 = new DateTime('2023-01-01');

$date2 = new DateTime('2024-01-01');
A primeira é referente ao primeiro dia de 2023 e a segunda do primeiro dia de 2024.

Agora vamos aplicar o método diff:

$diff = $date1->diff($date2);
A variável $diff irá retornar um objeto do tipo DateInterval:
object(DateInterval)#3 (10) {
  ["y"] => int(1)
  ["m"] => int(0)
  ["d"] => int(0)
  ["h"] => int(0)
  ["i"] => int(0)
  ["s"] => int(0)
  ["f"] => float(0)
  ["invert"] => int(0)
  ["days"] => int(365)
  ["from_string"] => bool(false)
}

Diferença em dias

É possível calcular o total de dias entre as datas da seguinte forma:

$diff->days; // 365

$diff->format('%a') // 365

Diferença em anos

A quantidade de anos entre as duas datas pode ser conferida das seguintes formas:

$diff->y; // 1

$diff->format('%y') // 1

Diferença em outros formatos

Você pode calcular a diferença em vários outros formatos além de dias e anos. Aqui você pode ver mais detalhes:

PHP: DateInterval::format - Manual

www.php.net

Referências

Mais informações desse método podem ser encontrados em:

PHP: DateTimeInterface::diff - Manual

www.php.net


Comentários (0)

0/512
Link