本文整理汇总了PHP中Time::Parse方法的典型用法代码示例。如果您正苦于以下问题:PHP Time::Parse方法的具体用法?PHP Time::Parse怎么用?PHP Time::Parse使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Time
的用法示例。
在下文中一共展示了Time::Parse方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: appendBlocked
private function appendBlocked($start, $end, $label, $dayOfWeek = null)
{
$this->layout->AppendBlockedPeriod(Time::Parse($start, $this->timezone), Time::Parse($end, $this->timezone), $label, $dayOfWeek);
}
示例2: SetTimeString
/**
* @param string $time
* @param bool $isEndTime
* @return Date
*/
public function SetTimeString($time, $isEndTime = false)
{
return $this->SetTime(Time::Parse($time, $this->Timezone()), $isEndTime);
}
示例3: GetLayout
public function GetLayout($scheduleId, ILayoutFactory $layoutFactory)
{
/**
* @var $layout ScheduleLayout
*/
$layout = $layoutFactory->CreateLayout();
$reader = ServiceLocator::GetDatabase()->Query(new GetLayoutCommand($scheduleId));
while ($row = $reader->GetRow()) {
$timezone = $row[ColumnNames::BLOCK_TIMEZONE];
$start = Time::Parse($row[ColumnNames::BLOCK_START], $timezone);
$end = Time::Parse($row[ColumnNames::BLOCK_END], $timezone);
$label = $row[ColumnNames::BLOCK_LABEL];
$periodType = $row[ColumnNames::BLOCK_CODE];
$dayOfWeek = $row[ColumnNames::BLOCK_DAY_OF_WEEK];
if ($periodType == PeriodTypes::RESERVABLE) {
$layout->AppendPeriod($start, $end, $label, $dayOfWeek);
} else {
$layout->AppendBlockedPeriod($start, $end, $label, $dayOfWeek);
}
}
$reader->Free();
return $layout;
}
示例4: testTimesCanBeCompared
public function testTimesCanBeCompared()
{
$date = Date::Parse('2010-01-01');
$early = Time::Parse('10:11');
$late = Time::Parse('12:11');
$this->assertEquals(-1, $early->Compare($late, $date));
$this->assertEquals(1, $late->Compare($early, $date));
$early2 = Time::Parse('10:11', 'US/Central');
$late2 = Time::Parse('10:11', 'US/Pacific');
$this->assertEquals(-1, $early2->Compare($late2, $date));
}
示例5: testGetsDailySummaryForResource
public function testGetsDailySummaryForResource()
{
$targetTimezone = 'America/Chicago';
$date = Date::Parse('2009-09-02', $targetTimezone);
$start = $date->SetTime(Time::Parse('04:00'));
$end = $date->SetTime(Time::Parse('05:00'));
$resourceId = 1;
$scheduleLayout = new ScheduleLayout($targetTimezone);
$scheduleLayout->AppendPeriod(new Time(4, 0, 0, $targetTimezone), new Time(5, 0, 0, $targetTimezone));
$listing = $this->getMock('IReservationListing');
$firstReservation = new TestReservationListItem($start, $end, $resourceId);
$reservations = array($firstReservation, new TestReservationListItem($start, $end, $resourceId), new TestBlackoutListItem($start, $end, $resourceId));
$listing->expects($this->once())->method('OnDateForResource')->with($this->equalTo($date), $this->equalTo($resourceId))->will($this->returnValue($reservations));
$layout = new DailyLayout($listing, $scheduleLayout);
$summary = $layout->GetSummary($date, $resourceId);
$this->assertEquals(2, $summary->NumberOfReservations());
$this->assertEquals($firstReservation, $summary->FirstReservation());
}
示例6: testSkipsAddingBufferSlotsIfThereIsAnotherItemAtThatTime
public function testSkipsAddingBufferSlotsIfThereIsAnotherItemAtThatTime()
{
$tz = 'America/Chicago';
$listDate = Date::Parse('2011-02-08', $tz);
$layout = new ScheduleLayout($tz);
$layout->AppendPeriod(Time::Parse('0:00', $tz), Time::Parse('0:30', $tz));
$layout->AppendPeriod(Time::Parse('0:30', $tz), Time::Parse('1:00', $tz));
$layout->AppendPeriod(Time::Parse('1:00', $tz), Time::Parse('1:30', $tz));
$layout->AppendPeriod(Time::Parse('1:30', $tz), Time::Parse('2:00', $tz));
$layout->AppendPeriod(Time::Parse('2:00', $tz), Time::Parse('6:00', $tz));
$layout->AppendPeriod(Time::Parse('6:00', $tz), Time::Parse('0:00', $tz));
$item1 = new TestReservationItemView(1, Date::Parse('2011-02-08 0:30', $tz)->ToUtc(), Date::Parse('2011-02-08 1:00', $tz)->ToUtc(), 1);
$item2 = new TestReservationItemView(2, Date::Parse('2011-02-08 1:30', $tz)->ToUtc(), Date::Parse('2011-02-08 2:00', $tz)->ToUtc(), 1);
$item1->WithBufferTime(60 * 60);
$item2->WithBufferTime(60 * 60);
$r1 = new ReservationListItem($item1);
$r2 = new ReservationListItem($item2);
$list = new ScheduleReservationList(array($r1, $r2), $layout, $listDate, false);
/** @var IReservationSlot[] $slots */
$slots = $list->BuildSlots();
$this->assertTrue($slots[0]->Begin()->Equals(Time::Parse('0:00', $tz)));
$this->assertTrue($slots[0]->End()->Equals(Time::Parse('0:30', $tz)));
$this->assertInstanceOf('BufferSlot', $slots[0]);
$this->assertTrue($slots[1]->Begin()->Equals(Time::Parse('0:30', $tz)));
$this->assertTrue($slots[1]->End()->Equals(Time::Parse('1:00', $tz)));
$this->assertInstanceOf('ReservationSlot', $slots[1]);
$this->assertTrue($slots[2]->Begin()->Equals(Time::Parse('1:00', $tz)));
$this->assertTrue($slots[2]->End()->Equals(Time::Parse('1:30', $tz)));
$this->assertInstanceOf('EmptyReservationSlot', $slots[2]);
$this->assertTrue($slots[3]->Begin()->Equals(Time::Parse('1:30', $tz)));
$this->assertTrue($slots[3]->End()->Equals(Time::Parse('2:00', $tz)));
$this->assertInstanceOf('ReservationSlot', $slots[3]);
$this->assertTrue($slots[4]->Begin()->Equals(Time::Parse('2:00', $tz)));
$this->assertTrue($slots[4]->End()->Equals(Time::Parse('6:00', $tz)));
$this->assertInstanceOf('BufferSlot', $slots[0]);
}
示例7: testSkipsBlockedPeriodsForDailyLayout
public function testSkipsBlockedPeriodsForDailyLayout()
{
$tz = 'America/New_York';
$scheduleLayoutFactory = new ScheduleLayoutFactory($tz);
$layout = $scheduleLayoutFactory->CreateLayout();
$layout->AppendPeriod(Time::Parse("00:00", $tz), Time::Parse("00:00", $tz), null, DayOfWeek::SUNDAY);
$layout->AppendBlockedPeriod(Time::Parse("00:00", $tz), Time::Parse("00:00", $tz), null, DayOfWeek::MONDAY);
$layout->AppendPeriod(Time::Parse("00:00", $tz), Time::Parse("00:00", $tz), null, DayOfWeek::TUESDAY);
$layout->AppendPeriod(Time::Parse("00:00", $tz), Time::Parse("00:00", $tz), null, DayOfWeek::WEDNESDAY);
$layout->AppendPeriod(Time::Parse("00:00", $tz), Time::Parse("00:00", $tz), null, DayOfWeek::THURSDAY);
$layout->AppendPeriod(Time::Parse("00:00", $tz), Time::Parse("00:00", $tz), null, DayOfWeek::FRIDAY);
$layout->AppendPeriod(Time::Parse("00:00", $tz), Time::Parse("00:00", $tz), null, DayOfWeek::SATURDAY);
$sun = Date::Parse('2013-01-06 23:30', $tz);
$mon = Date::Parse('2013-01-07 00:00', $tz);
$tue = Date::Parse('2013-01-08 01:00', $tz);
$wed = Date::Parse('2013-01-09 00:30', $tz);
$thu = Date::Parse('2013-01-10 23:00', $tz);
$fri = Date::Parse('2013-01-11 02:30', $tz);
$sat = Date::Parse('2013-01-12 03:30', $tz);
$sunPeriods = $layout->GetLayout($sun, true);
$monPeriods = $layout->GetLayout($mon, true);
$tuePeriods = $layout->GetLayout($tue, true);
$wedPeriods = $layout->GetLayout($wed, true);
$thuPeriods = $layout->GetLayout($thu, true);
$friPeriods = $layout->GetLayout($fri, true);
$satPeriods = $layout->GetLayout($sat, true);
$this->assertEquals(1, count($sunPeriods));
$this->assertEquals(0, count($monPeriods));
$this->assertEquals(1, count($tuePeriods));
$this->assertEquals(1, count($wedPeriods));
$this->assertEquals(1, count($thuPeriods));
$this->assertEquals(1, count($friPeriods));
$this->assertEquals(1, count($satPeriods));
}