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


    实现思路例如以下:
    通过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:workspacedzx2
    php.exe D:workspacedzx2index_cli.php Sms/sendjob>c:smslog.txt
    意思以此是:当前文件夹移动到d盘,当前文件夹移动到D:workspacedzx2文件夹下(我的项目入口文件),通过绝对路径的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  。
     
    其他參考文章:
  • 相关阅读:
    hadoopfs: 未找到命令...
    WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
    centos 7 安装音乐播放器(亲测可用)(转载)
    Linux 脚本编写基础
    Zip加密
    Qt嵌入cef3关闭窗口时崩溃的问题
    C++11多线程基础
    C++11多线程(std::atomic)
    C++11多线程(thread_local)
    VS 新建RelWithDebInfo模式
  • 原文地址:https://www.cnblogs.com/wgwyanfs/p/6920140.html
Copyright © 2020-2023  润新知