think+php5+定时任务,详解thinkphp5.1/5.0定时任务的实现步骤

我主要做的是一个员工生日当天发短信的功能,每天跑一次脚本,

第一步:

a.App/模块/ 下创建command文件夹

b.我这边是创建在admin模块里面,在command文件夹下创建一个SendMessage.php文件(具体名字自己根据需求定)

c.复制下面的代码到SendMessage.php

namespace app\admin\command;

use think\console\Command;

use think\console\Input;

use think\console\Output;

use think\Db;

use think\Log;

class SendMessage extends Command

{

protected function configure(){

$this->setName('SendMessage')->setDescription("计划任务 SendMessage");

}

//调用SendMessage 这个类时,会自动运行execute方法

protected function execute(Input $input, Output $output){

$output->writeln('Date Crontab job start...');

/*** 这里写计划任务列表集 START ***/

$this->birthday();//发短信

/*** 这里写计划任务列表集 END ***/

$output->writeln('Date Crontab job end...');

}

//获取当天生日的员工 发短信

public function birthday()

{

echo '这里写你要实现的逻辑代码';

}

}

第二步:在APP/command.php里面加上

return ['app\admin\command\SendMessage'];

26ccf50888e0dbbd33ab1fb96cb2eb60.png

第三步:设置crontab计划任务

crontab -l //计划任务列表

crontab -e //编辑新增

crontab -r //删除

为了方便测试,可以先设置成每分钟执行一次 ,记录一下日志/www/wwwroot/tool/runtime/message/2019.log

*/1 * * * * php /www/wwwroot/tool/think SendMessage>>/www/wwwroot/tool/runtime/message/2019.log 2>&1

//监控一下你的脚本是不是正常的

tail -f /www/wwwroot/tool/runtime/message/2019.log

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值