hutnikau/job-scheduler – планировщик задач на пхп
$executionTime = new \\DateTime('2017-12-12 20:00:00');
//run monthly, at 20:00:00, 5 times
$rule = new \\Scheduler\\Job\\RRule('FREQ=MONTHLY;COUNT=5', $executionTime);
$job = new \\Scheduler\\Job\\Job($rule, function () {
//do something
});