elipettingale/laravel-progress-command

一个简单的命令,可以将进度条输出到控制台。

v2.6.4 2018-09-07 14:16 UTC

This package is auto-updated.

Last update: 2024-09-27 06:04:51 UTC


README

一个简单的命令,可以将进度条输出到控制台。

将输出各种进度条,这些进度条将根据fireItem()函数返回的键进行更新。

示例

class TestCommand extends ProgressCommand implements HasInfoBar
{
    protected $signature = 'test-command';
   
    protected function getItems()
    {
        return ['One', 'Two', 'Three', 'Four', 'Five', 'Six', 'Seven', 'Eight', 'Nine', 'Ten'];
    }
    
    protected function fireItem($item): string
    {
        sleep(1);
        
        return array_random(['success', 'error']);
    }
    
    public function getItemIdentifier($item): string
    {
        return $item;
    }
    
    protected function getProgressBarBlueprints(): array
    {
        return [
            new ProgressBarBlueprint('success', 'Success', [
                'foreground' => 'green'
            ]),
            new ProgressBarBlueprint('error', 'Error', [
                'foreground' => 'red'
            ])
        ];
    }
}

ProgressBarBlueprint

这些是定义将打印到控制台上的进度条的方式。每个蓝图必须有一个'key',用于通过fireItem方法识别要增加哪个进度条,以及一个'描述',这是一个自由文本,用作进度条的标签。