krislux/anano-console

命令行界面,专为Anano2设计,但也可以独立使用。

v1.0.5 2017-06-15 11:43 UTC

This package is not auto-updated.

Last update: 2024-09-29 03:04:57 UTC


README

是什么

这是一个简单的框架,旨在简化在任何项目中创建和管理自己的CLI任务。

主要功能是使用反射自动生成文档,使得创建、使用和管理辅助函数变得容易,同时也方便在未来回忆如何使用它们,并与其他开发者共享。

用法

按照以下安装说明操作后,只需在项目根目录中打开一个终端并运行

php run

由于自动文档,大部分用法都是不言自明的。
您可以使用php run filename:methodname运行任何命令,并通过在命令后添加--help来获取使用帮助,无论是否有方法,例如php run command --helpphp run command:make --help

要开始创建自己的命令文件,运行php run command:make example,这将在配置中列出的第一个目录中创建一个ExampleCommand.php文件,其中包含许多有用的注释和示例方法。或者,如果您知道自己在做什么,可以通过传递--clean来获取一个裸露的命令文件,您可以填充。

参数

Anano-Console近似标准GNU/Bash参数语法。有四种类型的参数

  • 命令。这必须是第一个参数,通常由文件和方法通过冒号分隔。

  • 位置参数。这些没有前缀,在PHP中映射到函数参数。这些必须按特定顺序排列。

  • 长选项。这些以--开头,可以用=指定值 - 例如--arg=value。位置无关。

  • 短选项。通常是长选项的别名,以-开头,限于一个字符,不能有值。位置无关。

短选项可以分组,即-a -b -c-abc相同。
所有选项都可以在位置参数之前、之后或之间 - 重要的是顺序。

编码

命令文件可以访问一些有用的方法来访问参数等。

  • $this->hasOption('a', 'aaaa') - (bool) 检查是否设置了短参数a或长参数aaaa。参数的数量和顺序无关。

  • $this->getOption('aaaa') (mixed) 从长参数aaaa获取值,如果没有值则返回true。

  • $this->readLine() (mixed) 请求用户输入并返回它。也可以用来暂停执行。

  • $this->writeLine('string') (void) 将'string'写入输出。非常类似于简单的echo,但强制在后面添加一个换行符。

  • $this->confirm('string') (bool) 只是一个写和读的简写,如果用户同意则返回true。

安装

对于Anano

导航到您的Anano 2或更高版本安装的根目录,然后运行

composer require krislux/anano-console

或者require-dev,如果您不想在生产服务器上使用它。

独立使用

按照上述步骤操作,但在安装完成后,您必须手动将/vendor/krislux/anano-console/bin/run复制到您的项目根目录,并设置必要的权限。

由于Composer不会从库中运行安装后的脚本,我无法找到自动执行此操作的方法。

之后,您可能想在任何文本编辑器中打开 run 文件,并查看顶部附近的配置部分。

许可证

MIT 许可证.