Workerman-Crontab 项目教程

Workerman-Crontab 项目教程

workerman-crontab Dynamic crontab for php, power by workerman workerman-crontab 项目地址: https://gitcode.com/gh_mirrors/wo/workerman-crontab

1. 项目目录结构及介绍

workerman-crontab/
├── composer.json
├── config/
│   └── crontab.php
├── src/
│   ├── Crontab.php
│   ├── Worker.php
│   └── ...
├── vendor/
│   └── ...
├── README.md
└── start.php

目录结构说明

  • composer.json: 项目的依赖管理文件,用于定义项目的依赖包。
  • config/: 配置文件目录,包含项目的配置文件,如 crontab.php
  • src/: 源代码目录,包含项目的核心代码文件,如 Crontab.phpWorker.php
  • vendor/: 依赖包目录,由 Composer 自动生成,包含项目所需的所有第三方库。
  • README.md: 项目说明文件,通常包含项目的简介、安装方法和使用说明。
  • start.php: 项目的启动文件,用于启动 Workerman 服务。

2. 项目的启动文件介绍

start.php

<?php
require_once __DIR__ . '/vendor/autoload.php';

use Workerman\Worker;
use Workerman\Crontab\Crontab;

$worker = new Worker();

$worker->onWorkerStart = function() {
    // 每分钟的第1秒执行
    new Crontab('1 * * * * *', function() {
        echo date('Y-m-d H:i:s') . "\n";
    });

    // 每天的7点50执行,注意这里省略了秒位
    new Crontab('50 7 * * *', function() {
        echo date('Y-m-d H:i:s') . "\n";
    });
};

Worker::runAll();

启动文件说明

  • require_once: 引入 Composer 自动加载文件,确保所有依赖包可以被正确加载。
  • Worker: Workerman 的核心类,用于创建和管理 Worker 进程。
  • Crontab: Workerman 的定时任务类,用于设置定时任务。
  • onWorkerStart: Worker 进程启动时的回调函数,通常在这里设置定时任务。
  • Worker::runAll(): 启动所有 Worker 进程。

3. 项目的配置文件介绍

config/crontab.php

<?php
return [
    'timezone' => 'PRC', // 设置时区
    'tasks' => [
        'task1' => [
            'expression' => '1 * * * * *', // 每分钟的第1秒执行
            'callback' => function() {
                echo date('Y-m-d H:i:s') . "\n";
            }
        ],
        'task2' => [
            'expression' => '50 7 * * *', // 每天的7点50执行
            'callback' => function() {
                echo date('Y-m-d H:i:s') . "\n";
            }
        ]
    ]
];

配置文件说明

  • timezone: 设置 PHP 的时区,确保定时任务的时间计算正确。
  • tasks: 定义定时任务的数组,每个任务包含 expression(定时表达式)和 callback(回调函数)。
  • expression: 定时任务的执行时间表达式,格式类似 Linux 的 crontab。
  • callback: 定时任务执行时的回调函数,通常在这里编写任务的具体逻辑。

通过以上配置,可以灵活地定义和管理定时任务,确保项目在指定时间执行相应的任务。

workerman-crontab Dynamic crontab for php, power by workerman workerman-crontab 项目地址: https://gitcode.com/gh_mirrors/wo/workerman-crontab

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柯玫艺Harriet

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值