Laravel 控制台向导
发布日期:作者: Paul Redmond
Laravel 控制台向导 是一个用于在控制台中创建具有复杂输入的多步骤向导的软件包。它的主要目的是收集文件生成器的数据,以下是从项目自述文件中摘取的示例
namespace App\Console\Commands; use Shomisha\LaravelConsoleWizard\Command\Wizard;use Shomisha\LaravelConsoleWizard\Steps\ChoiceStep;use Shomisha\LaravelConsoleWizard\Steps\TextStep; class IntroductionWizard extends Wizard{ protected $signature = "wizard:introduction"; protected $description = 'Introduction wizard.'; public function getSteps(): array { return [ 'name' => new TextStep("What's your name?"), 'age' => new TextStep("How old are you?"), 'gender' => new ChoiceStep("Your gender?", ["Male", "Female"]), ]; } public function completed() { $this->line(sprintf( "This is %s and %s is %s years old.", $this->answers->get('name'), ($this->answers->get('gender') === 'Male') ? 'he' : 'she', $this->answers->get('age') )); }}
此软件包通过定义一组步骤来工作,然后一旦完成,您可以处理数据以进行输出,生成文件或根据需要对数据执行任何操作。
- TextStep – 预期文本输入答案(例如,名称)
- MultipleAnswerTextStep – 与 TextStep 类似,但它接受多个答案并将它们作为数组返回
- ChoiceStep – 这允许用户从多个选项中选择一个答案
- MultipleChoiceStep – 与 ChoiceStep 类似,但允许用户选择多个选项并将值作为数组返回
- UniqueMultipleChoiceStep – 与 MultipleChoiceStep 相同,但不允许用户多次选择单个选项
-
ConfirmStep – 用户确认是或否,此步骤返回一个
Boolean
。
了解更多
您可以在 GitHub 上了解有关此软件包的更多信息,获取完整的安装说明并查看 源代码。此软件包还提供一个 wiki,其中包含有关步骤类型、验证和使用软件包的深入文档。