Recurr\Rule::setRDates PHP 메소드

setRDates() 공개 메소드

This rule specifies an array of dates that will be included in a recurrence set.
public setRDates ( array $rDates )
$rDates array Array of dates that will be included in the recurrence set.
    public function setRDates(array $rDates)
    {
        $timezone = new \DateTimeZone($this->getTimezone());
        foreach ($rDates as $key => $val) {
            if ($val instanceof DateInclusion) {
                $val->date = $this->convertZtoUtc($val->date);
            } else {
                $date = new \DateTime($val, $timezone);
                $rDates[$key] = new DateInclusion($this->convertZtoUtc($date), strpos($val, 'T') !== false, strpos($val, 'Z') !== false);
            }
        }
        $this->rDates = $rDates;
    }

Usage Example

예제 #1
0
 public function testSetRDates()
 {
     $rule = new Rule('FREQ=DAILY;COUNT=2', new \DateTime('2015-12-10'));
     $rDates = array(new DateInclusion(new \DateTime('2015-12-08'), false));
     $rule->setRDates($rDates);
     $computed = $this->transformer->transform($rule);
     $this->assertCount(3, $computed);
     $this->assertEquals(new \DateTime('2015-12-10'), $computed[0]->getStart());
     $this->assertEquals(new \DateTime('2015-12-11'), $computed[1]->getStart());
     $this->assertEquals(new \DateTime('2015-12-08'), $computed[2]->getStart());
 }
All Usage Examples Of Recurr\Rule::setRDates