PHP定时任务脚本模板带日志记录

4 篇文章 0 订阅
4 篇文章 0 订阅
<?php

//引入配置文件
require_once(dirname(__FILE__).'\config.php');
/**
 *  检查传参
 */
$loop = isset($argv[4]) ? $argv[4] : 0;
define('APPLICATION_PATH_FILE', dirname(dirname(__FILE__)));
$logFile = APPLICATION_PATH_FILE . '/data/log/myCron';
 if (file_exists($logFile)) {
    //如果任务日志文件存在时间超过1小时则删除文件
    if (time() - filemtime($logFile) > 3600) {
        @unlink($flagFile);
    }
}
//如果日志文件存在,程序已经运行.
 if (file_exists($logFile)) {
    echo "Is already running,please unlock!";
    exit;
}
//加日志,创建日志文件,不同操作系统兼容
touch($logFile);
if (preg_match('/linux/i', PHP_OS) || preg_match('/Unix/i', PHP_OS)) {
    chmod($flagFile, 0777);
}


define('STARTTIME', '['.date('Y-m-d H:i:s').']');
echo STARTTIME."Cron start!\n";
try {
    echo 'run my PHP script!';
    $open = popen('php '.__DIR__.'\myCron.php -a param1 param2 &','w');
    $result[] = $open;
} catch (Exception $e) {
    echo $e->getMessage();
}
define('ENDTIME', '['.date('Y-m-d H:i:s').']');
echo ENDTIME."Cron End!\n";

//解锁,删除日志文件
unlink($logFile);

此脚本支持文件记录计划任务运行情况,包括开始时间,结束时间,任务报错或者程序运行过程记录,还可传参,具体日志细节可根据个人需求做出调整。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
windows下使用PHP实现定时执行脚本 一直以来,使用PHP定时运行脚本都是让大家头痛的问题,但是我们确实可以利用windows的计划任务定时调用PHP脚本,当然这还要感谢PHP.exe。下面,站长将向大家介绍,如何来实现。 目标:根据系统时间定时执行PHP脚本,不需要人工运行(这里以定时新建一个文本文件并写入内容为例) 解决步骤: 1、建立PHP脚本,如下: 大家,可以看见,我们在这里对将要创建的文件路径使用了绝对路径,这是因为我们将要通过windows命令行来调用此脚本,由于cmd.exe与我们的web根目录是不一样的,而php的文件目录函数只能在web根目录范围内进行操作,所以我们需要使用绝对路径,否则代码将正确执行但是文件将不会被创建。 2、新建.bat文件,代码如下: "D:\Program Files (x86)\Web\PHP\php.exe" -f "D:\Program Files (x86)\Web\www\root\go.php" 保存,并命名为run.bat。 注意,如果你的PHP目录或web根目录中含有空格,你需要使用引号将整个路径引用起来,否则将运行错误。站长的目录中含有空格,因此使用了引号。创建属于你自己的bat文件时,请根据自身情况决定是否要使用引号和文件的目录。 3、添加windows计划任务 从控制面板中打开计划任务(这里主要针对win7用户进行说明),点击“创建基本任务”,填写名称和描述,然后点击“下一步”,选择任务执行的频率,很好理解,然后点击“下一步”,设置任务的执行时间,然后点击“下一步”,选择“启动程序”,点击“下一步”,点击浏览按钮选择我们建立的“run.bat”文件,点击”下一步“,点击”完成“。 4、运行 根据你设置的时间,系统会定时自动运行,如果你等不及也可以手动执行。在”计划任务“中间栏下方的任务名中查找你刚才新建的任务,鼠标双击该任务,单击右边的运行按钮,系统会弹出一个cmd对话框然后关闭,这说明你的脚本已经正确执行了,到创建文件的目录去检查文件是否创建。 好了,在windows下使用PHP实现计划任务就介绍到这里了,希望对大家有帮助。 (责任编辑:麦田守望者)
要配置PHP定时任务脚本,你需要完成以下步骤: 1. 编写PHP脚本:首先,你需要编写一个PHP脚本,用于执行你想要的任务,例如生成报告、发送邮件或者更新数据库等。 2. 安装计划任务管理器:你需要安装一个计划任务管理器,例如cronjob或者Task Scheduler,来运行定时任务。这些管理器会在指定的时间或时间间隔内自动运行你的PHP脚本。 3. 配置计划任务:在计划任务管理器中,你需要配置一个计划任务,指定你的PHP脚本在何时运行。你可以设置任务的运行时间、运行频率和运行方式等信息。 下面是一个在Linux系统上配置PHP定时任务的例子: 1. 编写PHP脚本:假设你有一个名为report.phpPHP脚本,用于生成每天的报告。 2. 安装cronjob:在终端中输入以下命令安装cronjob: ``` sudo apt-get install cron ``` 3. 编辑cronjob文件:在终端中输入以下命令编辑cronjob文件: ``` crontab -e ``` 4. 配置计划任务:在cronjob文件中添加以下内容,表示在每天的早上6点运行report.php脚本: ``` 0 6 * * * /usr/bin/php /path/to/report.php ``` 其中,“0 6 * * *”表示任务运行时间,即每天早上6点,后面的“/usr/bin/php /path/to/report.php”表示要运行的PHP脚本路径。 5. 保存文件:保存cronjob文件并退出编辑器。 现在,你已经成功配置了一个定时任务,每天早上6点,系统会自动运行report.php脚本并生成报告。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值