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框架创建定时任务的资料请关注悠久资源网其它相关文章!
您可能感兴趣的文章:
- 如何在thinkphp中使用windows计划任务定时执行php文件
- ThinkPHP框架实现定时执行任务的两种方法分析
- ThinkPHP实现非标准名称数据表快速创建模型的方法
- Thinkphp框架安装composer扩展包流程梳理
- phpstudy的安装及ThinkPHP框架的搭建图文讲解