构建一个命令程序
编辑该页面构建一个命令程序
当构建一个命令行工具,你可能不需要提供多个命令。在这种情况下,不得不通过命令名每次都乏味。幸运的是,可以删除这需要通过声明一个命令程序:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
# !/usr/bin/env php< ? php需要__DIR__。“/供应商/ autoload.php”;使用ob娱乐下载\组件\控制台\输入\InputArgument;使用ob娱乐下载\组件\控制台\输入\InputInterface;使用ob娱乐下载\组件\控制台\输入\InputOption;使用ob娱乐下载\组件\控制台\输出\OutputInterface;使用ob娱乐下载\组件\控制台\SingleCommandApplication;(新SingleCommandApplication ())- >setName (“我的超级命令”)/ /可选- >setVersion (“1.0.0”)/ /可选- >addArgument (“foo”,InputArgument::可选的,“目录”)- >使用addOption (“酒吧”,零,InputOption::VALUE_REQUIRED)- >setCode (函数(InputInterface美元输入,OutputInterface美元输出){/ /输出参数和选项})- >run ();
5.1
的SingleCommandApplication类是在Symfony 5.1中引入的。ob娱乐下载
你仍然可以注册一个命令像往常一样:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
# !/usr/bin/env php< ? php需要__DIR__。“/供应商/ autoload.php”;使用Acme\命令\DefaultCommand;使用ob娱乐下载\组件\控制台\应用程序;美元应用程序=新应用程序(“回声”,“1.0.0”);美元命令=新DefaultCommand ();美元应用程序- >add (美元命令);美元应用程序- >setDefaultCommand (美元命令- >getName (),真正的);美元应用程序- >run ();
的setDefaultCommand ()方法接受一个布尔作为第二个参数。如果是真的,该命令回声
将始终使用,而无需通过它的名称。
这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。