For example "the last work day of the month" could be represented as:
RRULE:FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-1
Each BYSETPOS value can include a positive or negative integer.
If present, this indicates the nth occurrence of the specific occurrence
within the set of events specified by the rule.
public setBySetPosition ( array $bySetPosition ) | ||
$bySetPosition | array | Array of values which corresponds to the nth occurrence within the set of events specified by the rule. |
public function testGetString() { $this->rule->setFreq('YEARLY'); $this->rule->setCount(2); $this->rule->setInterval(2); $this->rule->setBySecond(array(30)); $this->rule->setByMinute(array(10)); $this->rule->setByHour(array(5, 15)); $this->rule->setByDay(array('SU', 'WE')); $this->rule->setByMonthDay(array(16, 22)); $this->rule->setByYearDay(array(201, 203)); $this->rule->setByWeekNumber(array(29, 32)); $this->rule->setByMonth(array(7, 8)); $this->rule->setBySetPosition(array(1, 3)); $this->rule->setWeekStart('TU'); $this->rule->setExDates(array('20140607', '20140620T010000Z', '20140620T010000')); $this->assertEquals('FREQ=YEARLY;COUNT=2;INTERVAL=2;BYSECOND=30;BYMINUTE=10;BYHOUR=5,15;BYDAY=SU,WE;BYMONTHDAY=16,22;BYYEARDAY=201,203;BYWEEKNO=29,32;BYMONTH=7,8;BYSETPOS=1,3;WKST=TU;EXDATE=20140607,20140620T010000Z,20140620T010000', $this->rule->getString()); }