Что делает абсолютный параметр в DateTime :: diff (DateTime [, bool absolute = false]) - PullRequest
4 голосов
/ 29 сентября 2011

Вот пример кода

$c = new DateTime();
$o = clone $c;
$o->modify('-60 days');
$diff = $c->diff($o);
$diff2 = $c->diff($o, TRUE);
var_dump($diff, $diff2);

, который выводит

object(DateInterval)#3 (8) {
  ["y"]=> int(0), ["m"]=> int(1), ["d"]=> int(29), ["h"]=> int(0), ["i"]=> int(0),
  ["s"]=> int(0), ["invert"]=> int(1), ["days"]=> int(60)
}
object(DateInterval)#4 (8) {
  ["y"]=> int(0), ["m"]=> int(1), ["d"]=> int(29), ["h"]=> int(0), ["i"]=> int(0),
  ["s"]=> int(0), ["invert"]=> int(0), ["days"]=> int(60)
}

, как я вижу, изменяется только свойство "инвертировать".Что это значит?

Ответы [ 2 ]

8 голосов
/ 29 сентября 2011

Свойство absolute возвращает абсолютную разницу между двумя объектами DateTime.Это изменит результат на положительный, когда возвращается отрицательная разница.

0 голосов
/ 29 сентября 2011

С php.net

Absolute parameter determines whether to return absolute difference.

LOI datetime.diff

...