thinkphp3.2.3如何每30分钟自动执行controller下的方法,这个是主动的,不需要访问,本人操作系统是win10

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp3.2.3如何每30分钟自动执行controller下的方法,这个是主动的,不需要访问,本人操作系统是win10相关的知识,希望对你有一定的参考价值。

也就是要做到后台的某个方法可以在服务器上每隔一个时间就自动执行,主要是实时更新数据库,无关前台

linux系统用crontab 定时每30分钟执行一次php脚本

windows系统用计划任务 定时每30分钟执行一次php 脚本

下面是wind7的截图,window10你自己查下

参考技术A 确认一下:你的前台和后台指的是两个不同的模块吗?比如说前台的Index模块,后台的Admin模块,这样的吗?如果是的话,有下面1、2两种方法;如果不是的话,请查看3;
前台调用后台方法:
1、可以将需要调用的方法提取出来,放入"你的项目文件/Common/Common"文件夹里的function.php文件中;这样这个方法前台后台都可以调用了;
2、直接新建一个php文件,写入你的方法,放入"你的项目文件/Common/Common"文件夹,然后在"你的项目文件/Common/Config.php"中使用 "LOAD_EXT_FILE"=>"XXX",引入你自定义的方法文件(引入时不需要带php后缀);这样也可以在前台/后台同时调用这个方法。
3、在前端页面中调用后台方法?那应该可以使用ajax进行直接调用。
Ps:建议查看ThinkPHP3.2.3的开发手册。

如何在 C# winform 中每分钟自动调用一个方法

【中文标题】如何在 C# winform 中每分钟自动调用一个方法【英文标题】:how to call a method every min automactic in C# winform 【发布时间】:2017-09-25 14:43:36 【问题描述】:

在 C# winform 中每 5 秒自动运行一个函数 当一个程序执行时我调用一个方法来加载我怎样才能把这段代码放在c#winform中

public void InitTimer()


    timer1 = new Timer();
    timer1.Tick += new EventHandler(timer1_Tick);
    timer1.Interval = 200; // in milliseconds
    timer1.Start();


private void timer1_Tick(object sender, EventArgs e)

    MessageBox.Show("test");

【问题讨论】:

但是您的代码不起作用吗?您必须更改的一件事是到 5000(5 秒)的间隔。但除此之外,我不知道你到底有什么疑问 【参考方案1】:

将 200 替换为 5000

public void InitTimer()

    timer1 = new Timer();
    timer1.Tick += new EventHandler(timer1_Tick);
    timer1.Interval = 5000; // in milliseconds => 1 sec = 1000 millisec
    timer1.Start();


private void timer1_Tick(object sender, EventArgs e)

    MessageBox.Show("test");

【讨论】:

我知道,但我的问题是我把这个方法放在哪里,比如加载等...... 我不了解你的业务,但我建议在constructor使用它【参考方案2】:

如果您使用 Visual Studio,请在工具框中将计时器拖到表单中,将时间间隔设置为 5000,将启用设置为 true。这将在加载时自动启动计时器,否则在表单加载中使用

timer1.Start();

这将在页面加载时启动计时器。

【讨论】:

以上是关于thinkphp3.2.3如何每30分钟自动执行controller下的方法,这个是主动的,不需要访问,本人操作系统是win10的主要内容,如果未能解决你的问题,请参考以下文章

如何正确地每分钟执行一次线程?

如何在 C# winform 中每分钟自动调用一个方法

ThinkPHP3.2.3扩展之自动分词获取关键字

ThinkPHP3.2.3批量执行sql语句(带事务)

如何使用php、html及消息队列实现订单超时自动关闭订单

thinkPHP3.2.3源码分析