corex / command
Requires
- php: >=5.6.4
- corex/support: ^2.5.2
Requires (Dev)
- phpunit/phpunit: ^6.2
README
php的命令框架。
您将认出一些熟悉的模式,例如Laravel的签名,但具有附加属性。这是为了在其他框架和CMS中未来使用。
运行 "php crcmd" 以查看可用命令列表。
运行 "php crcmd help make:shortcut" 在当前目录中创建快捷方式。此文件可以修改以满足您的需求,例如禁用内部命令。如果您指定 --command,您将能够为特定命令创建快捷方式。
每个创建的命令都必须以 "Command.php" 结尾,例如 "MyCommand.php"。否则它将不会添加到可用命令列表中。
安装
- 运行 "composer require corex/command"。
命令(内部)。
- make:command - 此命令创建命令。
- make:shortcut - 此命令在当前目录中创建快捷方式。
- json:delete - 删除键。
- json:get - 获取键。
- json:set - 在json中设置键。
命令文档
查看现有命令以查看示例。源代码可以在vendor包中找到。
属性
$component
每个命令都属于一个组件。此属性指定组件名称。必须指定为小写。可以设置为空字符串,此时将是“main”命令(无组件)。
$signature
此签名描述了命令的参数和选项。它遵循与Laravel 5相同的设置。
格式为 "command {argument/--option : description} {argument/--option : description}"
- 第一部分 "command" 是命令名称。必须指定为小写。
- 第二部分 "{argument/--option : description}" 是参数和选项的格式。可以指定多次。每个参数/选项必须被{}包围。
- 每个参数都是必需的,除非您在参数名称末尾添加一个"?"。如果添加了"?",参数将返回null。
- 每个选项都必须以"--"开头。如果在线上指定,它将为true,否则为false。如果您需要解析值,请添加"="。
$description
这是您将在可用命令列表中看到的简短描述。
$visible
此选项可以是true或false。如果为false,它将不会显示在命令列表中。您仍然可以使用"help"来显示命令,并且它仍然可以正常工作。
您的代码位于名为run()的方法中。
开发时的辅助工具
在开发中使用 "$this->" 时,将有一长串方法帮助你编写命令,例如 table()、header()、info()、throwError()、words()、choice() 等。
开始
要使用命令开始一个新项目,请按照以下步骤操作:
- 安装包。
- 为命令设置命名空间。
- 使用 "make:shortcut" 在项目的根目录创建快捷方式。
- 修改并设置 registerOnPath()。
- 使用 "make:command" 创建新的命令并修改它。
配置
设置项目的配置。
设置 config-path。默认为 {root}/config。
使用 $this->config('path.to.my.config')。使用点表示法。第一个部分是文件本身。其余是数组。
示例:如果你有一个以下配置文件 config/vars.php,其中包含以下数组...
return [ 'test' => [ 'example' => 'testing' ] ];
...
$myVar = $this->config('vars.test.example');
...