$round = 0; for($i = 0; $i < $count; $i++){ $time = $startTime + 7 * SECDAY * $i * $_POST['cyclicity']['repeat']; $weeks[] = $year.":".$week; } while ($round < $_POST['cyclicity']['finish']['round']) { if ($isDay && $isWeek) { $options = $_POST; if ($parentId == null) { $parentId = $options['id']; } else { $options['parentId'] = $parentId; } if ($length) { } $events[] = $options; $round ++; $startTime += SECDAY; } else { $startTime += SECDAY; } }
Na wstępie wrzucam sobie do tablicy wszystkie tygodnie, w których dane zadanie będzie miało miejsce. To działa dobrze. Problem powstaje w momencie gdy zmienia się rok na następny. Tydzień wtedy się 'zeruje'. Gdy while np. dojdzie do dnia 30.12.2013, który znajduje się w 1 tygodniu, ale w 2013 roku. W tablicy z tygodniami mam 50 tydzień 2013 roku, następnie 1 tydzien 2014 roku, 4/2014 a 1/2013 się w niej nie znajduje. Pytanie brzmi jak zrobić aby
zwróciło zamiast 2013:01 to 2014:01. Wiem, że trochę do kitu to wytłumaczyłem ale jakoś nie wiem jak to opisać..