(PHP 5 >= 5.3.0, PHP 7)
DateTime::diff -- DateTimeImmutable::diff -- DateTimeInterface::diff -- date_diff — Retorna a diferença entre dois objetos DateTime
Estilo orientado à objeto
$datetime2
[, bool $absolute
= false
] )$datetime2
[, bool $absolute
= false
] )Estilo procedural
$datetime1
, DateTimeInterface $datetime2
[, bool $absolute
= false
] )Retorna a diferença entre dois objetos que implementam a classe DateTimeInterface.
datetime
A data a ser comparada.
absolute
O intervalo deve ser forçado como positivo?
O objeto DateInterval representando a
diferença entre as duas datas ou FALSE
em caso de falha.
Exemplo #1 Exemplo do método DateTime::diff()
Estilo orientado à objeto
<?php
$datetime1 = new DateTime('2009-10-11');
$datetime2 = new DateTime('2009-10-13');
$interval = $datetime1->diff($datetime2);
echo $interval->format('%R%a days');
?>
Estilo procedural
<?php
$datetime1 = date_create('2009-10-11');
$datetime2 = date_create('2009-10-13');
$interval = date_diff($datetime1, $datetime2);
echo $interval->format('%R%a days');
?>
Os exemplos acima irão imprimir:
+2 days
Exemplo #2 Comparação entre objetos DateTime
Nota:
A partir do PHP 5.2.2, objetos DateTime podem ser comparados utilizando os operadores de comparação.
<?php
$date1 = new DateTime("now");
$date2 = new DateTime("tomorrow");
var_dump($date1 == $date2);
var_dump($date1 < $date2);
var_dump($date1 > $date2);
?>
O exemplo acima irá imprimir:
bool(false) bool(true) bool(false)