sebastianfeldmann / crontab
Manage your crontab with some simple PHP commands.
Fund package maintenance!
sebastianfeldmann
Requires
- php: >=7.1.0
- ext-spl: *
- sebastianfeldmann/cli: ~1.0
Requires (Dev)
- phpunit/phpunit: ^7.0
This package is auto-updated.
Last update: 2024-10-29 05:04:53 UTC
README
Features
Lists all cron jobs with a nice OO interface. Add jobs to your crontab.
Requirements
- PHP >= 7.0
- POSIX Shell with crontab command
Installation
Installing crontab via Composer.
"require": { "sebastianfeldmann/crontab": "~1.0" }
Usage
Read crontab
$crontab = new SebastianFeldmann\Crontab\Operator(); foreach ($crontab->getJobs() as $job) { echo "Description: . PHP_EOL . implode(PHP_EOL, $job->getComments()) . PHP_EOL; echo "Schedule: " . PHP_EOL . $job->getSchedule() . PHP_EOL; echo "Command: " . PHP_EOL . $job->getCommand() . PHP_EOL; }
Add job to crontab
$crontab = new SebastianFeldmann\Crontab\Operator(); $crontab->addJob( new SebastianFeldmann\Crontab\Job( '30 4 * * *', '/foo/bar/binary', ['Some foo bar binary execution'] ) );
This will add the following lines to your crontab.
# Some foobar binary execution
30 4 * * * /foo/bar/binary
The crontab parser is looking for commands and their description in the lines above the command. The parser expects commands to NOT spread over multiple lines with \.
# Descriptoon for some command
10 23 * * * some command
# Next Command Description
# even more description for the next command
30 5 * * * next command