2017 © Pedro Peláez
 

library cron-expression

CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due

image

enterdev/cron-expression

CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due

  • Monday, January 9, 2017
  • by enter-is
  • Repository
  • 2 Watchers
  • 1 Stars
  • 366 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 232 Forks
  • 0 Open issues
  • 8 Versions
  • 69 % Grown

The README.md

PHP Cron Expression Parser

This is a fork of a cron-expression library by Michael Dowling (mtdowling). The main difference between this one and the original, is that this fork adds support for seconds (which makes it noticeably slower, so I urge you to use the original if you don't need seconds)., (*1)

The PHP cron expression parser can parse a CRON expression, determine if it is due to run, calculate the next run date of the expression, and calculate the previous run date of the expression. You can calculate dates far into the future or past by skipping n number of matching dates., (*2)

The parser can handle increments of ranges (e.g. */12, 2-59/3), intervals (e.g. 0-9), lists (e.g. 1,2,3), W to find the nearest weekday for a given day of the month, L to find the last day of the month, L to find the last given weekday of a month, and hash (#) to find the nth weekday of a given month., (*3)

Installing

Add the dependency to your project:, (*4)

composer require enterdev/cron-expression

Usage

<?php

require_once '/vendor/autoload.php';

// Works with predefined scheduling definitions
$cron = Cron\CronExpression::factory('@daily');
$cron->isDue();
echo $cron->getNextRunDate()->format('Y-m-d H:i:s');
echo $cron->getPreviousRunDate()->format('Y-m-d H:i:s');

// Works with complex expressions
$cron = Cron\CronExpression::factory('0 3-59/15 2,6-12 */15 1 2-5');
echo $cron->getNextRunDate()->format('Y-m-d H:i:s');

// Calculate a run date two iterations into the future
$cron = Cron\CronExpression::factory('@daily');
echo $cron->getNextRunDate(null, 2)->format('Y-m-d H:i:s');

// Calculate a run date relative to a specific time
$cron = Cron\CronExpression::factory('@monthly');
echo $cron->getNextRunDate('2010-01-12 00:00:00')->format('Y-m-d H:i:s');

CRON Expressions

A CRON expression is a string representing the schedule for a particular command to execute., (*5)

The parts of a CRON schedule are as follows:, (*6)

*    *    *    *    *    *    *
-    -    -    -    -    -    -
|    |    |    |    |    |    |
|    |    |    |    |    |    + year [optional]
|    |    |    |    |    +----- day of week (0 - 7) (Sunday=0 or 7)
|    |    |    |    +---------- month (1 - 12)
|    |    |    +--------------- day of month (1 - 31)
|    |    +-------------------- hour (0 - 23)
|    +------------------------- min (0 - 59)
+------------------------------ sec (0 - 59)

Requirements

  • PHP 5.3+
  • PHPUnit is required to run the unit tests
  • Composer is required to run the unit tests

The Versions

09/01 2017

dev-master

9999999-dev

CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due

  Sources   Download

MIT

The Requires

  • php >=5.3.2

 

The Development Requires

schedule cron

09/01 2017

1.2.0

1.2.0.0

CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due

  Sources   Download

MIT

The Requires

  • php >=5.3.2

 

The Development Requires

schedule cron

26/01 2016

v1.1.0

1.1.0.0

CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due

  Sources   Download

MIT

The Requires

  • php >=5.3.2

 

The Development Requires

schedule cron

12/01 2015

v1.0.4

1.0.4.0

CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due

  Sources   Download

MIT

The Requires

  • php >=5.3.2

 

The Development Requires

schedule cron

23/11 2013

v1.0.3

1.0.3.0

CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due

  Sources   Download

MIT

The Requires

  • php >=5.3.2

 

schedule cron

05/04 2013

v1.0.2

1.0.2.0

CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due

  Sources   Download

MIT

The Requires

  • php >=5.3.2

 

schedule cron

06/03 2013

v1.0.1

1.0.1.0

CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due

  Sources   Download

MIT

The Requires

  • php >=5.3.2

 

schedule cron

15/07 2012

v1.0.0

1.0.0.0

CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due

  Sources   Download

MIT

The Requires

  • php >=5.3.2

 

schedule cron