Example #1
0
 /**
  * comparand conforms to protocol DateAndTime,
  * or can be converted into something that conforms.
  * 
  * @param object $comparand
  * @return boolean
  * @access public
  * @since 5/3/05
  */
 function isLessThan($comparand)
 {
     $comparandAsDateAndTime = $comparand->asDateAndTime();
     if ($this->offset->isEqualTo($comparandAsDateAndTime->offset())) {
         $myTicks = $this->ticks();
         $comparandTicks = $comparandAsDateAndTime->ticks();
     } else {
         $meAsUTC = $this->asUTC();
         $myTicks = $meAsUTC->ticks();
         $comparandAsUTC = $comparandAsDateAndTime->asUTC();
         $comparandTicks = $comparandAsUTC->ticks();
     }
     if ($myTicks[0] < $comparandTicks[0]) {
         return TRUE;
     } else {
         return $myTicks[0] == $comparandTicks[0] && $myTicks[1] < $comparandTicks[1];
     }
 }
Example #2
0
 /**
  * Answer an Timespan. anEnd must be aDateAndTime or a Timespan
  * 
  * @param object $anEnd Must be a DateAndTime or a Timespan
  * @return object Timespan
  * @access public
  * @since 5/13/05
  */
 function to($anEnd)
 {
     $obj = Timespan::startingEnding($this->start(), $anEnd->asDateAndTime());
     return $obj;
 }