-
Notifications
You must be signed in to change notification settings - Fork 49
about console command
Inhere edited this page May 28, 2022
·
6 revisions
通常我们再Linux终端执行一个命令都包含以下部分: 命令名,选项,参数
简单的如 ls, grep
等,是个独立的小命令,可以有选项参数
CMD --OPTIONS ARGUMENTS
复杂一些的可以有子命令,且子命令可以有多级,如 git, composer
CMD SUB --OPTIONS ARGUMENTS
- 选项以
-
或者--
开头的,且首字符必须是字母 - 以
--
开头的为长选项. eg:--long
--long value
- 以
-
开头的为短选项-s -a value
- 支持定义数组选项
- eg:
--tag php --tag go
将会得到$tag = [php, go]
- eg:
- 不能满足选项的都认作参数
- 支持绑定命名参数
- 支持定义数组参数
如果你只想构建一个简单的命令可以使用我的 php-toolkit/pflag 库, php-console 是基于它构建复杂应用的。
console 包支持使用 controller 形式简单快速的组织一组命令。也支持使用 command 形式构建每个独立命令。
使用console 包可以快速方便的编写命令
- 可以直接使用注释tag,方便快速的定义命令的选项和参数
- 也可以通过对象化的方式配置一个命令
- 自动生成漂亮的帮助面板信息
- 支持设置选项或参数的值类型,会自动格式化为对应类型
如何在使用console包独立命令类,请查看 创建命令
TIP: 创建好命令后需要注册到Application, 请继续看 注册命令 章节
更多使用和编写说明请查看 创建命令组
TIP: 创建好命令后需要注册到Application, 请继续看 注册命令 章节
我的其他PHP项目
- inhere/kite 方便本地开发和使用的个人CLI工具应用
- php-toolkit/pflag PHP编写的,通用的命令行标志(选项和参数)解析库
- phppkg/easytpl 使用简单且快速的 PHP 模板引擎
- inhere/php-validate 一个简洁小巧且功能完善的php验证库
- inhere/sroute 轻量且快速的HTTP请求路由库