如何在thinkphp中使用windows计划任务定时执行php文件

admin3年前PHP教程49

实现思路如下:

通过win的“任务”功能来定时执行一个bat文件,bat文件会调用php.exe文件,php.exe可以传递参数指定执行哪个类和方法

方法如下:

一,thinkphp开启cli支持

1、tp正好支持cli命令模式,手册的路径为13.7.4 如果是用的其他框架不支持cli,那么只能直接写程序了,其实就是写面向过程的最基础的php代码。

2、在入口文件下开启命令,加入一句


define('MODE_NAME', 'cli');

网站一般还有可以通过网页访问的模块,所以可以新建立一个cli的入口如index_cli.php,这样其他的模块还可以通过正常的入口进入。有的手册上写的开始cli定义的是


define('THINK_MODE ', 'cli');

可能是版本不同,注意这点。

二、新建立bat文件

新建立一个txt文件,里面写上如下三行内容:


d:
cd D:\workspace\dzx2
php.exe D:\workspace\dzx2\index_cli.php Sms/sendjob>c:\smslog.txt

意思以此是:当前目录移动到d盘,当前目录移动到D:\workspace\dzx2文件夹下(我的项目入口文件),通过绝对路径的php.exe 空格输入绝对的项目cli入口文件,后面空格+参数(我已经把php.exe添加到了系统的环境变量的path变量中,所以只写了php.exe) 简单就是:当前目录移动到项目入口文件,绝对路径的php.exe+绝对路径的项目入口文件+参数
把txt文件改为bat后缀的可执行文件,单击测试是否把执行了方法 (可以在bat文件最后写个Pause,来看看是否报错,或直接写入“>c:\smslog.txt ”,把输出的内容导入到一个txt文件,运行后查看该文件就知道报错与否或报哪些错误)

三、新建任务

windows下是:控制面板——》管理程序——》任务计划程序 ,右击 任务计划程序库 -》新建任务 运行的账户一定要有权限 触发器-》,新建   选择频率次数等功能 操作-》新建   选 启动程序 ,在下面找到自己写的bat文件,其他的可以自己看看
建立任务后,点程序运行一下,看看运行的时间和结果,还有自己程序所做的事做了没有,
有错的话注意的是包含 所选用户权限、各个路径是否正确、程序是否正确 。所以一般做是,首先保证通过url地址访问程序运行ok,然后是单击bat文件程序运行ok,再然后是任务计划运行ok  。

以上就是如何在thinkphp中使用windows计划任务定时执行php文件的详细内容,更多关于thinkphp定时执行php文件的资料请关注其它相关文章!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

php判断数组元素不为空格实例代码

1、使用foreach ($arr as $value){}语句遍历数组。2、使用if($value!=" ")语句判断数组元素是否为空格。3、如果数组元素全部不为空,则输出数组元...

企业网络安全的重要性?租用泉州高防大带宽服务器配置推荐?

你永远想不到网络安全对于公司的重要性,首先网络安全相当于人体的各类器官,是一个重要组成部分,而且是必不可少的,如果网络安全出现问题就相当于“千里之堤毁于蚁穴”,那我们平时面临的网络安全问题都有哪些呢?...

高防服务器的流量清洗是什么?国内电信100G高防服务器DOSS高防清洗?

越来越多大型行业网站由于一些的原因会经常被ddos流量攻击,为了确保业务服务和网站的正常执行,所以大家需要租赁专门防护ddos流量攻击的高防服务器。在租赁高防服务器的时候,大家会经常看见一些相关的防护...

浅谈PHP设计模式之对象池模式Pool

目录目的UML 类图代码测试目的在初始化实例成本高,实例化率高,可用实例不足的情况下,对象池可以极大地提升性能。在创建对象(尤其是通过网络)时间花销不确定的情况下,通过对象池在可期时间内就可以获得所需...

详解PHP解决守护进程Redis假死

目录一、一个简单的守护进程示例二、一个不再假死(伪活)的 Redis 常驻进程示例一、一个简单的守护进程示例<?php$redis = new \Redis();$redis->conne...

GPU显卡服务器除了玩游戏还能干什么租借美国GPU服务器的配置选择

GPU显卡服务器是服务器当中的一种,GPU显卡服务器是对GPU的各种应用比如深度学习和科学计算等多种场景的快速和稳定的计算服务,在管理方式上来说和标准云服务器一致的。它们都具有很好的图形处理能力和很强...