Добавил в систему класс для управления кроном скриптом php. Причины применения такого решения могут быть разными, сейчас не об этом, но иногда это здорово выручает. Класс расположен в system/core/cron/cron.php
Один из примеров его применения, это переодический вызов из утилиты linux. Для этого нужно будет создать файл в корне проекта с именем cron
аналогичный index.php
, но для константы ENTRANSE
указать значение cron
<?php
date_default_timezone_set('Europe/Saratov');
define('INDEX', true);
define('ROOT', str_replace('\\', '/', __DIR__));
define('ENTRANSE', 'cron');
define('ARGV', $argv);
define('APP_NAME', 'app');
define('APP', ROOT . '/' . APP_NAME);
define('SYSTEM', ROOT . '/system');
require_once ROOT . '/system/system.php';
Далее в директории приложения нужно создать файл app/route/cron.php
<?php
namespace route\crone;
use system\core\cron\cron;
$cron = new cron();
$cron->namespace('app/controllers/cron');
$cron->name('test')->daily(19)->controller('test', 'index');
$cron->name('test5')->min(10)->controller('test5', 'index');
exit('exit');
Здесь нужно создать объект класса cron
, указать namespace
и перечислить нужные процессы.
В метод name необходимо передать уникальное имя процесса, далее вызвать один из методов определяющих переодичность, их всего пять
В конце вызавается метод controller где указывается класс и метод контроллера.