Root/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | <?php namespace Cron; /** * Year field. Allows: * , / - */ class YearField extends AbstractField { public function isSatisfiedBy(\DateTime $date , $value ) { return $this ->isSatisfied( $date ->format( 'Y' ), $value ); } public function increment(\DateTime $date , $invert = false) { if ( $invert ) { $date ->modify( '-1 year' ); $date ->setDate( $date ->format( 'Y' ), 12, 31); $date ->setTime(23, 59, 0); } else { $date ->modify( '+1 year' ); $date ->setDate( $date ->format( 'Y' ), 1, 1); $date ->setTime(0, 0, 0); } return $this ; } public function validate( $value ) { return (bool) preg_match( '/^[\*,\/\-0-9]+$/' , $value ); } } |