• Laravel应用 -- 脚本任务


    大多数项目在业务发展过程中,都需要修复历史数据和定时任务来完成一些业务逻辑,这部分通常都需要通过脚本来完成,一般的框架爱也都提供这部分的功能,学习并使用是工作中的基本要求。

    基本流程

    commands模式运行脚本定时任务基本流程:

    1. app/Console/Commands/ 目录下创建脚本任务文件
    2. app/Console/Kernel.php $commands数组中添加新建的脚本类
    3. app/Console/Kernel.php schedule()方法中添加脚本定时任务命令

    具体实现

    创建脚本文件

    app/Console/Commands/QingShan/commandQingshan.php

    <?php
    namespace AppConsoleCommandsQingShan;
    
    use IlluminateConsoleCommand;
    
    class commandQingshan extends Command
    {
        // 自定义脚本命令签名
        protected $signature = 'qingshan:commandQingshan';
        
        // 自定义脚本命令描述
        protected $description = '这里是脚本命令的描述qingshan';
        
        // 创建一个新的命令实例
        public function __construct()
        {
            parent::__construct();
        }
    
        //具体执行的业务内容
        public function handle()
        {
        }
    }
    

    注册脚本

    app/Console/Kernel.php $commands数组中追加新建的脚本类

    protected $commands = [
        'BasicITLumenVendorPublishVendorPublishCommand',
        CommandsQingShancommandQingshan::class
    ]
    

    执行脚本

    查看脚本命令调用方式

    1. 在项目目录下执行下面的命令,查看当前可以执行的命令
    > php artisan list
    

    Available commands下会有一列:

    qingshan
        qingshan:commandQingshan     这里是脚本命令的描述qingshan
    
    1. 执行脚本命令
    > php artisan qingshan:commandQingshan
    

    添加到定时任务

    app/Console/Kernel.php schedule()方法中添加脚本定时任务命令

    // 设置commandQingshan脚本为每天15:00自动执行
    protected function schedule(Schedule $schedule)
    {
        $schedule->command('qingshan:commandQingshan')->dailyAt('15:00');
        
    }
    

    参考资料:

    Larave5.8中文文档--Artisan 命令行

  • 相关阅读:
    Mac下持续集成-查看占用的端口及kill
    windons模拟linux终端工具----cmder
    windows中使用django时报错:A server error occurred. Please contact the administrator.
    Pycharm和Navicat免费全功能版资源(即破解版)
    git常用命令
    pycharm常用的快捷键
    CSS3的媒体查询
    CSS列表中与list-style=none等价的样式
    CSS3中的mouse事件(mouseleave,mouseenter,mouseout,mouseover)
    CSS层级(浮动,定位的层级提升)
  • 原文地址:https://www.cnblogs.com/zqunor/p/11570789.html
Copyright © 2020-2023  润新知