Thinkphp6实现定时任务功能

本文主要介绍命令启动定时任务的功能,按照CRMEB标准版的程序为大家详细的进行实现过程的介绍

  1. 首先创建安装Worker,执行composer require topthink/think-worker 安装
  2. 在config/console.php中定义指令 'timer' => \crmeb\command\Timer::class
  1. 对应图1中的路径创建自定义指令crmeb\command\Timer.php
  1. configure方法只要配置指令的内容,文件定义了一个timer的命令,设置了一个status的参数以及两个(d:是否DAEMON方式启动,以及i:执行间隔)的选项。

  2. init方法在执行命令的时候对参数进行初始化并组合数据,判断命令是启动还是停止,是否修改执行间隔,是否以守护进程方式启动

  1. execute开始执行命令调用下方start方法

  2. start方法开始执行定时执行的逻辑按照设置的间隔时间($this->interval)进行执行,默认2秒运行一次,调用系统中app\event.php文件下定时任务事件订阅类

  1. 在定时任务事件订阅类中完成对应系统方法的调用,即可实现定时任务功能

  2. 命令行执行命令 php think timer start --d

相关推荐
醍醐实验室2 分钟前
长文本外推中的 RoPE Base 调优:从 10,000 到 500,000 的数学底数奥秘
人工智能
搞科研的小刘选手16 分钟前
【香港中文大学(深圳)、IEEE主办 | 深圳举办】第六届IEEE能源工程与电力系统国际学术会议(EEPS 2026)
人工智能·电力系统·能源工程·香港中文大学(深圳)·会议推荐
weixin_4462608520 分钟前
面向编码智能体的「先学测试,再用测试提升修复能力」框架
人工智能
happyness4422 分钟前
AI时代的软件工程:软件开发正在进入一个全新的时代
大数据·ai编程
2401_8653825024 分钟前
政务信息化项目审价的现实意义
大数据·人工智能·政务
lvts_cs26 分钟前
汽车零部件产业发展趋势,对地方招商工作带来的影响
大数据·人工智能·汽车
AI云海26 分钟前
计算机视觉之YOLO11整体架构、多任务能力
人工智能·计算机视觉·架构
浔溺26 分钟前
al+大数据每日学习笔记35
大数据·笔记·学习
Axis tech28 分钟前
基于Ego-Pi框架与Manus手套的仿人机器人灵巧操作研究
人工智能·机器学习·机器人
我有满天星辰35 分钟前
《从 0 打造我的本地 AI 知识库:Obsidian + Ollama + Milvus + RAG + MCP + Agent》第 01 篇
人工智能·milvus