helthe/chronos

Chronos:一个面向对象的cron作业库

1.0.0 2013-06-13 20:30 UTC

This package is auto-updated.

Last update: 2024-08-29 03:26:12 UTC


README

Chronos提供了一个面向对象的库来管理cron作业,包括使用crontab和通过程序。

安装

在您的composer.json中添加以下内容

{
    "require": {
        "helthe/chronos": "~1.0"
    }
}

使用方法

Cron表达式

Chronos的核心功能是使用CRON表达式解析器来验证所有cron作业。它支持这里定义的所有语言特性以及预定义的调度定义,除了@reboot

Crontab

您可以使用此库将cron作业直接部署到crontab中。

use Helthe\Component\Chronos\Crontab;
use Helthe\Component\Chronos\Job\CommandJob;

$crontab = new Crontab();
$job = new CommandJob('@hourly', '/usr/bin/my_great_command');

$crontab->add($job);

$crontab->update();

CronJobScheduler

您还可以通过程序运行cron作业。

use Helthe\Component\Chronos\CronJobScheduler;
use Helthe\Component\Chronos\Job\CommandJob;

$scheduler = new CronJobScheduler();
$job = new CommandJob('@hourly', '/usr/bin/my_great_command');

$scheduler->add($job);

$scheduler->runJobs();

致谢

Chronos的创建是为了满足管理PHP中重复作业的需求。它的最初灵感是拥有一个PHP中的Whenever等价物。

CRON表达式解析器最初是基于Michael Dowling构建的解析器

资源

您可以使用以下命令运行单元测试

$ cd path/to/Helthe/Component/XXX/
$ composer.phar install --dev
$ phpunit