Инструменты пользователя

Инструменты сайта


limb3:ru:packages:datetime:lmb_date_period

lmbDatePeriod

Класс lmbDatePeriod - представляет период от одной даты до другой, а также набор методов для работы с этим периодом.

Конструктор lmbDatePeriod может получать или 2 объекта класса lmbDate, или 2 timestamp-а, или 2 строки с датами в ISO-формате.

Методы для сравнения периодов

В основном назначение класса lmbDatePeriod - в сравнении различных периодов дат между собой.

  • isEqual($period) - возвращает true, если периоды полностью эквивалентны (с точностью до секунды)
  • includes($period) - возвращает true, если базовый период содержит $period внутри себя полностью.
  • isInside($period) - возвращает true, если базовый период полностью содержится внутри $period.
  • intersects($period) - возвращает true, если периоды каким-либо образом пересекаются.

Например:

  $p1 = new lmbDatePeriod('2005-12-01 13:45:00', '2005-12-01 13:46:00');
  $p2 = new lmbDatePeriod('2005-12-01 13:45:30', '2005-12-01 13:46:45');
  $p3 = new lmbDatePeriod('2005-12-01 13:45:25', '2005-12-01 13:46:40');
 
  $p2->interserts($p3); // вернет true
  $p2->isInside($p1); // вернет true
  $p2->includes($p1); // вернет false
  $p1->includes($p2); //вернет true

Прочие методы класса lmbDatePeriod

  • toString() - возвращает строку вида date_start_iso - date_end_iso
  • getDuration() - возвращает продолжительность периода в секундах
  • getStart() - возвращает объект даты начала периода
  • getEnd() - возвращает объект даты конца периода

Обсуждение

Ваш комментарий. Вики-синтаксис разрешён:
  _      __  __  __   ___  __  __ __  __
 | | /| / / / / / /  / _ | \ \/ / \ \/ /
 | |/ |/ / / /_/ /  / __ |  \  /   \  / 
 |__/|__/  \____/  /_/ |_|  /_/    /_/
 
limb3/ru/packages/datetime/lmb_date_period.txt · Последние изменения: 2010/11/10 10:02 (внешнее изменение)