1. 云栖社区>
  2. PHP教程>
  3. 正文

thinkphp 定时执行php文件--windows系统任务计划

作者:用户 来源:互联网 时间:2017-12-01 13:09:55

windows计划

thinkphp 定时执行php文件--windows系统任务计划 - 摘要: 本文讲的是thinkphp 定时执行php文件--windows系统任务计划,实现思路如下:通过win的“任务”功能来定时执行一个bat文件,bat文件会调用php.exe文件,php.exe可以传递参数指定执行哪个类和方法 方法如下:一,thinkphp开启cli支持 1、tp正好支持cli命令模式,手册的路径为1

实现思路如下:

通过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文件,运行后查看该文件就知道报错与否或报哪些错误


三、新建任务

win下是  控制面板——》管理程序——》任务计划程序

右击 任务计划程序库 -》新建任务

运行的账户一定要有权限

触发器-》新建  选择频率次数等功能

操作-》新建  选 启动程序  在下面找到自己写的bat文件

其他的可以自己看看


建立任务后,点程序运行一下,看看运行的时间和结果还有自己程序所做的事做了没有,


有错的话注意的是包含所选用户权限、各个路径是否正确、程序是否正确

所以一般做是首先,保证通过url地址访问程序运行ok,然后,是单击bat文件程序运行ok,再然后是任务计划运行ok  。

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索windows 计划 ,以便于您获取更多的相关知识。

稳定可靠、可弹性伸缩的在线数据库服务,全球最受欢迎的开源数据库之一

6款热门基础云产品6个月免费体验;2款产品1年体验;1款产品2年体验

弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率

开发者常用软件,超百款实用软件一站式提供