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

 更新时间:2021年04月21日 11:51:06   作者:老骥伏枥  
这篇文章主要介绍了如何在thinkphp中使用windows计划任务定时执行php文件,对定时执行感兴趣的同学,可以参考下

实现思路如下:

通过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文件的资料请关注脚本之家其它相关文章!

相关文章

  • PHP4和PHP5共存于一系统

    PHP4和PHP5共存于一系统

    这篇文章主要介绍了PHP4和PHP5共存于一系统
    2006-11-11
  • CakePHP去除默认显示的标题及图标的方法

    CakePHP去除默认显示的标题及图标的方法

    使用cakephp框架时,在生成的html页面里,总是有cakephp的标志(上面有大大的标题CakePHP Rapid Development,下面还有一个cakephp的图标),虽然是cakephp的东西,但放到自己的项目中看起来总是不顺眼。
    2008-10-10
  • 谈谈从phpinfo中能获取哪些值得注意的信息

    谈谈从phpinfo中能获取哪些值得注意的信息

    PHPInfo()函数主要用于网站建设过程中测试搭建的PHP环境是否正确,很多网站在测试完毕后并没有及时删除,因此当访问这些测试页面时,会输出服务器的关键信息,这些信息的泄露将导致服务器被渗透的风险。下面就来看看详细的介绍吧。
    2017-03-03
  • PHP单文件实现代码去行首尾空格和去空行

    PHP单文件实现代码去行首尾空格和去空行

    这篇文章主要为大家详细介绍了PHP如何利用单文件实现代码去行首尾空格和去空行,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-03-03
  • linux下为php添加curl扩展的方法

    linux下为php添加curl扩展的方法

    一般php源码的扩展库里已经带了curl的扩展,所以没有必要下载,直接将编译扩展即可
    2011-07-07
  • 详解php反序列化之字符逃逸法

    详解php反序列化之字符逃逸法

    这篇文章主要为大家详细介绍了php反序列化之字符逃逸法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • php设计模式 Chain Of Responsibility (职责链模式)

    php设计模式 Chain Of Responsibility (职责链模式)

    为解除请求的发送者和接收者之间的耦合,而使用多个对象都用机会处理这个请求,将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它
    2011-06-06
  • php 模拟POST提交的2种方法详解

    php 模拟POST提交的2种方法详解

    本篇文章是对php模拟POST提交的2种方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • PHP语法小结之基础和变量

    PHP语法小结之基础和变量

    本系列文章,我们将简单的为大家总结一下PHP之中语法知识,第一篇,我们先来介绍基础和变量,希望大家能够喜欢。
    2015-11-11
  • 通用PHP动态生成静态HTML网页的代码

    通用PHP动态生成静态HTML网页的代码

    最近研究PHP的一些开发技术,发现PHP有很多ASP所没有的优秀功能,可以完成一些以前无法完成的功能,例如动态生成HTML静态页面,以减少服务器CPU的负载,提高用户访问的速度。
    2010-03-03

最新评论