A standard cron spec does not have a year element, and the code in fromCronString() suggests that it is optional ("if(count($elements = preg_split('/\s+/', $cronSpec)) < 5)", "$newCron->_cronYears = isset($elements[5]) ? "); However omitting the year is not actually supported in the rest of the code where _years is presumed to be set. Perhaps the year part should become mandatory, or the rest of the code should be adjusted to make it optional (which could be done by substituting '*' for the year if it's absent).