pro如何添加定时任务

Pro v2.4版本开始后台可以开关控制定时任务,那如何添加新的定时任务呢?

第一步:设置定时任务名称及标识;

文件app\controller\admin\v1\system\SystemTimer中task_name()方法

复制代码
/**定时任务名称及标识

 * @return mixed

 */

public function task_name() {

    $data = [

        'auto_cancel' => '自动取消订单',

        'auto_take' => '自动确认收货',

        'auto_comment' => '自动好评',

        'auto_clear_integral' => '自动清空用户积分',

        'auto_off_user_svip' => '自动取消用户到期svip',

        'auto_agent' => '自动解绑上下级',

        'auto_clear_poster' => '自动清除昨日海报',

        'auto_sms_code' => '更新短信状态',

        'auto_live' => '自动更新直播产品状态和直播间状态',

        'auto_pink' => '拼团状态自动更新',

        'auto_show' => '自动上下架商品',

        'auto_channel' => '渠道码定时任务',

        'auto_moment' => '定时创建发送朋友圈任务',

        'auto_group_task' => '定时发送群发任务',

        'auto_seckill' => '定时清理秒杀数据过期的数据缓存'

    ];

    return $this->success($data);

}

如:auto_group_task是标识 '定时发送群发任务' 是定时任务名称

第二步:写定时任务内容;

文件app\listener\system\timer\SystemTimer 中implement_timer()方法

方法中 case 加定时任务标识;如:

第三步:后台设置新增定时任务执行周期后,重启swoole

相关推荐
JaguarJack7 小时前
PHP 的异步编程 该怎么选择
后端·php·服务端
BingoGo7 小时前
PHP 的异步编程 该怎么选择
后端·php
JaguarJack1 天前
为什么 PHP 闭包要加 static?
后端·php·服务端
ServBay2 天前
垃圾堆里编码?真的不要怪 PHP 不行
后端·php
用户962377954482 天前
CTF 伪协议
php
BingoGo4 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php
JaguarJack4 天前
当你的 PHP 应用的 API 没有限流时会发生什么?
后端·php·服务端
BingoGo5 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php
JaguarJack5 天前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php·服务端
JaguarJack6 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
后端·php·服务端