Пример #1
0
 /**
  * Given a utc time stamp, convert the time stamp to a timezone adjusted time stamp.
  * The time zone is based on the current user's time zone.
  */
 public function convertFromUtcTimeStampForCurrentUser($utcTimeStamp)
 {
     assert('is_int($utcTimeStamp)');
     $timeZone = $this->getForCurrentUser();
     return DateTimeUtil::convertFromUtcUnixStampByTimeZone($utcTimeStamp, $timeZone);
 }
Пример #2
0
 public function testConvertFromUtcUnixStampByTimeZone()
 {
     $timeZoneObject = new DateTimeZone('America/Chicago');
     $offset = $timeZoneObject->getOffset(new DateTime());
     $this->assertTrue($offset == -18000 || $offset == -21600);
     $utcTimeStamp = time();
     $adjustedTimeStamp = DateTimeUtil::convertFromUtcUnixStampByTimeZone($utcTimeStamp, 'America/Chicago');
     $this->assertEquals($utcTimeStamp + $offset, $adjustedTimeStamp);
     //other locales
     $timeZoneObject = new DateTimeZone('America/New_York');
     $offset = $timeZoneObject->getOffset(new DateTime());
     $this->assertTrue($offset == -18000 || $offset == -14400);
     $adjustedTimeStamp = DateTimeUtil::convertFromUtcUnixStampByTimeZone($utcTimeStamp, 'America/New_York');
     $this->assertEquals($utcTimeStamp + $offset, $adjustedTimeStamp);
 }