码农小将/laravel-command-switches

该软件包已被废弃,不再维护。未建议替代软件包。

一个Laravel辅助库,允许您开关命令

v0.1.6 2020-01-31 14:10 UTC

This package is auto-updated.

Last update: 2022-02-19 20:23:43 UTC


README

该库的主要目的是引入一个标准的方式来开关控制台命令。这是在失败作业发生时我经常要做的事情。

要求

  • PHP 7.1+
  • Laravel 5.6+

安装

该库可以通过composer简单安装。

composer require sammakescode/laravel-command-switches

安装后,运行您的迁移。

php artisan migrate

使用

检查您的命令是否开启

在您的命令中使用Switchable特性。

    use SamMakesCode\CommandSwitches\Traits\Switchable;

然后,您可以使用以下功能来确定命令是否被关闭。

    if ($this->isOff()) {
        \Log::notice($this->signature . ' is switched off');
        return;
    }
    // Your functionality

您还可以使用isOn()

    if ($this->isOn()) {
        // Your functionality
    }

以下是一个更完整的示例,以提供更多上下文。

<?php

namespace App\Console\Commands;

use Illuminate\Console\Command;
use SamMakesCode\CommandSwitches\Traits\Switchable;

class SomeCommand extends Command
{
    use Switchable;

    protected $signature = 'some-command';

    protected $description = 'Command description';

    public function __construct()
    {
        parent::__construct();
    }

    public function handle()
    {
        if ($this->isOn()) {
            // Your functionality
        }
    }
}

开关您的命令

您可以在代码中的任何位置切换您的命令(例如在管理部分)

    \SamMakesCode\CommandSwitches\CommandSwitch::findOrCreate(SomeCommand::class)->setOn();