thinkphp5使用workerman的定时器定时任务在某一个时间执行
1、首先通过 composer 安装workerman,在thinkphp5完全开发手册的扩展-》coposer包-》workerman有详细说明:
#在项目根目录执行以下指令
composer require topthink/think-worker
2.在项目根目录创建服务启动文件 server.php:
<?php define('APP_PATH', __DIR__ . '/application/');
define("BIND_MODULE", "server/Worker");
// 加载框架引导文件
require __DIR__ . '/thinkphp/start.php';
3、在application里创建server模块,并在server里创建控制器 Worker.php:
<?php
namespace app\server\controller; use think\worker\Server; class Worker extends Server
{
protected $processes=1;
public function onWorkerStart($work)
{
$handle=new Index();
$handle->add_timer();
}
}
4.创建Index.php类.定义一个每秒钟执行一次的定时器,在定时器里增加条件判断,当当前时间等于要执行的时间时,就执行此任务
<?php
namespace app\server\controller; use Workerman\Lib\Timer; class Index
{ public function add_timer(){
Timer::add(1, array($this, 'index'), array(), true);
} public function index(){ //每天0点执行任务
if(time()/86400===0){
echo date("Y-m-d H:i:s");
}
//每天8点执行任务
if(time()/86400===28800){
echo date("Y-m-d H:i:s");
} }
5、启动服务 php server.php start -d
thinkphp5使用workerman的定时器定时任务在某一个时间执行的更多相关文章
- delphi中我用定时器每隔一段时间执行操作
delphi中,我用定时器每隔一段时间执行数据库插入及更新工作!adoquery.close;adoquery.sql.cleare;adoquery.connection:=con1;adoquer ...
- timer和ScheduledThreadPoolExecutor定时任务和每日固定时间执行
//ScheduledThreadPoolExecutor每三秒执行一次 public static void main(String[] args) { ScheduledThread ...
- Android 使用定时器在指定日期及时间执行任务
public class MainActivity extends Activity { private Handler handler = new Handler(){ @Override publ ...
- thinkphp5使用workerman定时器定时爬取某站点新闻资讯等内容
1.首先通过 composer 安装workerman,在thinkphp5完全开发手册的扩展->coposer包->workerman有详细说明: #在项目根目录执行以下指令compos ...
- Java生鲜电商平台-定时器,定时任务quartz的设计与架构
Java生鲜电商平台-定时器,定时任务quartz的设计与架构 说明:任何业务有时候需要系统在某个定点的时刻执行某些任务,比如:凌晨2点统计昨天的报表,早上6点抽取用户下单的佣金. 对于Java开源生 ...
- thinkphp5+GatewayWorker+Workerman
项目地址 ttps://www.workerman.net/workerman-chat thinkphp5+GatewayWorker+Workerman聊天室,可以多人聊天,指定某个人进行聊天, ...
- Linux命令之Crontab定时任务,利用Crontab定时执行spark任务
Linux命令之Crontab定时任务,利用Crontab定时执行spark任务 一.Linux命令之Crontab定时任务 1.1 常见Crontab任务 1.1.1 安装crontab 1.1.2 ...
- linux定时任务生产java服务无法执行问题案例
我写了一个重启resin的脚本,由于业务原因,需要定时在某一个时间重启下resin服务器 于是就在crontab里配置了如下内容: * * - root /usr/local/bin/resin_re ...
- mac crontab时间断内随机时间执行定时任务
首先需要了解crontab使用,这里不多,主要是时间断内随机时间: 然而crontab 并没有具体方法实现时间段内随机时间执行,我的办法如下: 这里测试一个例子: 执行一个数据存文件python脚本, ...
随机推荐
- LayIM项目之基础数据获取代码优化,Dapper取代ADO.NET
前言 最近在开发LayIM融云版,也在进行项目重构,现在在看之前的代码,简直不敢直视.不过不知道以后看现在的代码是不是也是糟糕的一批.LayIM有个接口,一般接触过的开发人员都不会生疏,就是init接 ...
- iOS之序列化与反序列化
所谓的序列化和反序列化就是将数据结构或对象和二进制串之间相互转换的过程: 本人的理解是当你于写数据需要本地存储时,即将你的数据写到硬盘上的时候,你就必须对他进行序列化,转换成二进制文件,从而便于在磁盘 ...
- 在网页中使用Markdown
在网站中使用markdown有两种方式,一种是通过后端(php等)把markdown语法文本转换为html代码,输出到浏览器:另一种是通过javascript代码直接在浏览器中转换. 我在这里使用的是 ...
- 二十一、IntelliJ IDEA 控制台输出中文乱码问题的解决方法
首先,找到 IntelliJ IDEA 的安装目录,进入bin目录下,定位到idea.vmoptions文件,如下图所示: 双击打开idea.vmoptions文件,如下图所示: 然后,在其中追加-D ...
- HDU 1053 Entropy(哈夫曼编码 贪心+优先队列)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1053 Entropy Time Limit: 2000/1000 MS (Java/Others) ...
- JQuery手写一个简单的分页
效果图: 大概思路:使用ul进行初始布局,每一次点击事件改变li里的值.完整的代码在gitup上:https://github.com/anxizhihai/Paging.gitcss部分: html ...
- iOS读取info.plist中的值
在app运行的时候,需要读取info.plist中的信息,用以下代码可获取整个info.plist的信息 [[NSBundle mainBundle] infoDictionary] 以下为根据 ke ...
- iOS之创建通知、发送通知和移除通知的坑
1.创建通知,最好在viewDidLoad的方法中创建 - (void)viewDidLoad { [super viewDidLoad]; //创建通知 [[NSNotificationCenter ...
- GPUImage源码解读之GPUImageFramebuffer
简介 OpenGL ES的FrameBuffer是渲染发生的地方,普通的2D图形的渲染默认发生在屏幕上:而三维的图形渲染则除了包括像素点的颜色,还有Depth Buffer,Stencil Buffe ...
- Filebeat使用模块收集日志
1.先决条件 在运行Filebeat模块之前: 安装并配置Elastic stack 完成Filebeat的安装 检查Elasticsearch和Kibana是否正在运行,以及Elasticsearc ...