Перейти к содержимому
docs.
WORKSPACE

Документации проектов

Открыть каталог проектов
Localzet ServerАсинхронный PHP-серверTriangleФреймворк и компонентыMIX IDИдентификация и интеграцииHack APIПубличные API хакатонаACNПроект и компонентыUserlay / UserNetПроект и компонентыAxiomПроект и компонентыМесседжинг через почтуПроект и компонентыLWT / JWT / JOSEПроект и компонентыФинансовая аналитика KimaiПроект и компонентыМультипарадигмальная БДПроект и компонентыZorin PlatformПроект и компонентыZorin TrustПроект и компонентыFloraScope / VegwatchПроект и компонентыaegis-qДокументация проектаaevumdbДокументация проектаauditДокументация проектаauto-invest-managerАвтотрейдерcaine-companionДокументация проектаcertbot-cloudflareДокументация проектаClusterLocalzet Server / ClustercmdveilДокументация проектаConsolePHP CLICronБиблиотеки Localzet Server✓data-connectorДокументация проектаdevice-controlDevice Controlenn-projectДокументация проектаEventsБиблиотеки Localzet ServerflowsintДокументация проектаforgeДокументация проектаHttpClientБиблиотеки Localzet ServerinterpreterСобственный языкinvariaДокументация проектаkeynotesДокументация проектаknotrouteKnotroutelaravel-personal-analyticsДокументация проектаlocalzet-osДокументация проектаmeridianДокументация проектаMQTTБиблиотеки Localzet Servernano-kernelСобственная ОСNoterДокументация проектаpersonal-analyticsДокументация проектаProxyБиблиотеки Localzet ServerPSRБиблиотеки Localzet ServerPSR-7Библиотеки Localzet Serverrschs-monitorДокументация проектаsemsealДокументация проектаshardsealДокументация проектаSocketIOБиблиотеки Localzet ServerSOCKS5Библиотеки Localzet Serverstandalone-analyticsДокументация проектаstatic-php-cliДокументация проектаStorageБиблиотеки Localzet ServersutureДокументация проектаtempoweaveДокументация проектаttsСинтез речиTunnelБиблиотеки Localzet Serverui-kitUI KitvesperДокументация проектаWebAnalyzerWebAnalyzerzorin-access-brokerДокументация проектаzorin-authority-brokerДокументация проектаzorin-authority-sdk-phpДокументация проектаzorin-authority-sdk-pythonДокументация проектаzorin-authority-sdk-tsДокументация проектаzorin-client-intelДокументация проектаzorin-device-core-aospДокументация проектаzorin-host-agentДокументация проектаzorin-native-labДокументация проектаzorin-nodeДокументация проектаzorin-opsДокументация проектаdonstu-python-sdkДокументация проектаfloortraceFloortraceserver-rsLocalzet Server / Cluster
Каталог

Cron — API

Принимает пять или шесть разделённых пробелами полей. Строка обрезается по краям; несколько пробельных символов между полями допустимы. Имена месяцев/дней и макросы не поддерживаются.

Возвращает false при неподдерживаемой форме, нулевом или некорректном шаге. Числа вне диапазона могут превратиться в пустой набор значений и при этом не привести к false. Проверка не ищет будущую календарную дату срабатывания.

ПараметрПоведение
$ruleТа же строка, что принимает isValid(). Если проверка вернула false, выбрасывается InvalidArgumentException.
$startTimeUnix timestamp. При null используется time(). Секунды не нормализуются.
РезультатМассив Unix timestamps выбранной минуты, либо [], если календарные поля не совпали.

Формат сегмента влияет на последовательность секунд. 0,30,0 сохраняет повтор нуля; список не дедуплицируется автоматически. Не полагайтесь на сортировку произвольного списка: он обрабатывается в указанном порядке. При пяти полях единственная секунда — 0.

parse() не устанавливает таймеров и не вызывает callbacks.

new Cron(string $rule, $callback, string $name = '')

Конструктор сохраняет правило, callback и имя, назначает ID и добавляет объект в статический реестр. Первый конструктор в процессе запускает инициализацию таймеров. $callback не имеет callable type declaration в сигнатуре; передавайте действительный callable и проверяйте правило заранее.

Пустое правило или ложное значение callback пропускается сканером. Имя не задаёт уникальность: задания с одинаковыми именами остаются отдельными регистрациями.

МетодВозвращает
getRule(): stringИсходную строку правила.
getCallback()Сохранённое значение callback; проверка callable в этом getter не выполняется.
getName(): stringПрикладное имя задания.
getId(): intID внутри текущего процесса.
Cron::getAll(): arrayКарту id => Cron, а не список будущих времён.

$job->destroy(): bool вызывает Cron::remove($job->getId()).

Cron::remove($id): bool принимает числовой ID либо объект Cron. Возвращает true при удалении существующей регистрации, false при отсутствии. Вызовы допустимо повторять.

Ни destroy(), ни remove() не удаляют уже запланированные одноразовые таймеры. Также они не останавливают общий timer сканирования; он продолжает планироваться даже при пустом реестре.

Нет persistent job store, retry/backoff, distributed lock, управления пропущенными запусками, ограничения конкурентных выполнений и учёта результата задания. Изменение часового пояса или системного времени влияет на последующие календарные проверки. Эти свойства нужно реализовать в приложении либо выбрать другой планировщик под соответствующий контракт.