1. Go to this page and download the library: Download makinacorpus/cron library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
makinacorpus / cron example snippets
namespace MyVendor\MyApp\Cron;
use MakinaCorpus\Cron\CronTask;
// Using a function.
#[CronTask(id: 'foo', schedule: '1 2 3 4 5')]
function foo(): void
{
// Do something.
}
// Using an invokable class.
#[CronTask(id: 'bar', schedule: '@daily')]
class Bar
{
public function __invoke(): mixed
{
// Do something.
}
}
// Using an instance method.
class Buzz
{
#[CronTask(id: 'buzz', schedule: '@monthly')]
public function someMethod(): void
{
}
}
// Using a static class method.
class Fizz
{
#[CronTask(id: 'fizz', schedule: '@weekly')]
public function someMethod(): void
{
}
}
namespace MyVendor\MyApp\Command;
use MakinaCorpus\Cron\TaskRegistry\ArrayTaskRegistry;
use MyVendor\MyApp\Cron\Bar;
use MyVendor\MyApp\Cron\Buzz;
use MyVendor\MyApp\Cron\Fizz;
$taskRegistry = new ArrayTaskRegistry([
'MyVendor\\MyApp\\Cron\\foo',
new Bar(),
[new Buzz(), 'someMethod']
[Fizz::class, 'someMethod'],
]);
namespace MyVendor\MyApp\Command;
use MakinaCorpus\Cron\CronRunner;
// $taskRegistry is the instance you created upper.
$runner = new CronRunner($taskRegistry);
$runner->run();
namespace MyVendor\MyApp\Cron;
use MakinaCorpus\Cron\CronTask;
// Using an instance method.
class SomeClassWithCronTaskMethods
{
#[CronTask(id: 'buzz', schedule: '@monthly')]
public function someInstanceMethod(): void
{
}
#[CronTask(id: 'buzz', schedule: '@monthly')]
public static function someStaticMethod(): void
{
}
}
use MakinaCorpus\Cron\ScheduleFactoryRegistry;
use MakinaCorpus\Cron\Schedule\CronExpressionScheduleFactory;
ScheduleFactoryRegistry::set(new CronExpressionScheduleFactory());
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.