antonchaikin/f3-scheduler
Composer 安装命令:
composer require antonchaikin/f3-scheduler
包简介
Cron-based task scheduler for the Fat-Free Framework (F3)
README 文档
README
F3Scheduler is a simple cron-style task scheduler plugin for the Fat-Free Framework (F3). It allows you to register periodic tasks using cron expressions and execute them via a route or CLI-safe handler.
🚀 Features
- Register tasks using cron expressions or helper methods like
everyMinute(),hourly(),daily(), etc. - Supports callable PHP functions and string commands (executed via
php index.php ...). - Flexible error handling via
setErrorHandler(...). - Built-in route:
GET /cron/schedule/runfor triggering tasks from CRON. - Designed for F3 and easy integration.
🛠 Installation
composer require antonchaikin/f3-scheduler
🧩 Setup
In your app bootstrap:
\F3Scheduler\F7SchedulePlugin::register();
This will:
- Register the route
GET /cron/schedule/run - Bind
Scheduleto$f3->schedulefor easy static access
🧪 Usage
Register a task:
$f3->schedule::everyMinute(function () { echo "Run every minute!"; });
Register a shell command:
$f3->schedule::daily("clear-cache");
Custom cron:
$f3->schedule::on("0 0 1 * *", fn() => echo "Run every 1st of month!");
Set error handler:
$f3->schedule::setErrorHandler(function ($e) { error_log("[SCHEDULE ERROR] " . $e->getMessage()); });
Trigger tasks manually (e.g. from cron job):
curl https://your-app.com/cron/schedule/run
⏰ System Cron Setup
To run scheduled tasks every minute, add the following line to your server's crontab:
* * * * * curl -s https://your-app.com/cron/schedule/run > /dev/null 2>&1
Make sure the route /cron/schedule/run is publicly accessible or secured via IP/user-agent as needed.
📚 Available Methods
everyMinute(callable|string)everyFiveMinute(callable|string)everyTenMinutes(callable|string)everyFifteenMinutes(callable|string)everyThirtyMinutes(callable|string)hourly(callable|string)daily(callable|string)dailyNoon(callable|string)weekly(callable|string)monthly(callable|string)on(string cronExpression, callable|string)
🧠 Notes
- String tasks will be executed using
php ./index.php {your-command}. - The route
/cron/schedule/runaccepts only bot/cron-like User-Agents by default. CLI is always allowed.
📄 License
MIT © Anton Chaikin
antonchaikin/f3-scheduler 适用场景与选型建议
antonchaikin/f3-scheduler 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 21 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 05 月 28 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 antonchaikin/f3-scheduler 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 antonchaikin/f3-scheduler 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 21
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 12
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-05-28