1、安装定时任务composer包
composer require easy-task/easy-task
2、创建命令行处理类文件
php think make:command task task
会生成文件:app\command\task.php
将task.php文件内容修改如下:
<?php
declare (strict_types=1);
namespace app\command;
use think\console\command;
use think\console\input;
use think\console\input\argument;
use think\console\input\option;
use think\console\output;
class task extends command
{
protected function configure()
{
//设置名称为task
$this->setname('task')
//增加一个命令参数
->addargument('action', argument::optional, "action", '')
->addargument('force', argument::optional, "force", '');
}
protected function execute(input $input, output $output)
{
//获取输入参数
$action = trim($input->getargument('action'));
$force = trim($input->getargument('force'));
// 配置任务,每隔20秒访问2次网站
$task = new \easytask\task();
$task->setruntimepath('./runtime/');
$task->addfunc(function () {
$url = 'https://www.wushengyong.com/';
file_get_contents($url);
}, 'request', 20, 2);;
// 根据命令执行
if ($action == 'start')
{
$task->start();
}
elseif ($action == 'status')
{
$task->status();
}
elseif ($action == 'stop')
{
$force = ($force == 'force'); //是否强制停止
$task->stop($force);
}
else
{
exit('command is not exist');
}
}
}3、配置config\console.php文件
<?php
// +----------------------------------------------------------------------
// | 控制台配置
// +----------------------------------------------------------------------
return [
// 指令定义
'commands' => [
'task' => 'app\command\task',
],
];4、执行命令(windows请使用cmd):
php think task start 启动命令 php think task status 查询命令 php think task stop 关闭命令 php think task stop force 强制关闭命令
以上就是使用thinkphp框架(thinkphp8.0)创建定时任的操作步骤的详细内容,更多关于thinkphp框架创建定时任务的资料请关注代码网其它相关文章!
发表评论