troublete / argv
此包已被放弃,不再维护。未建议替代包。
用于解释 CLI 参数的小型功能库
2.0.0
2017-10-15 17:04 UTC
Requires (Dev)
- php: >=7
- codeception/codeception: ~2.3
This package is not auto-updated.
Last update: 2020-01-24 17:11:17 UTC
README
用于解释 CLI 参数的小型功能库 ✨
安装
$ composer require troublete/argv
用法
<?php require_once 'path/to/autoload.php'; use function Argv\{cleanArguments, getFlags}; $cleanedArguments = cleanArguments($argv); $flags = getFlags($cleanedArguments); if ($flags->rainbow) { echo 'rainbow 🌈'; }
在 CLI 执行如 $ php file-with-script.php --rainbow
时,CLI 将输出 rainbow 🌈
。(见 examples
目录中的示例)
API
方法
cleanArguments(array $argv): string
将从输入参数中移除脚本。
reduceFlagName(string $flagName): string
将从标志和标志别名中移除 -
和 --
。
isCommandCall(array $arguments): bool
将通过检查第一个参数来决定是否调用命令或仅发生标志调用。
isFlag(string $argument): bool
将通过检查是否以 --
开头来确定参数是否为标志。
isFlagAlias(string $argument): bool
将通过检查第一个字符是否为 -
来确定参数是否为标志别名。
getFlags(array $arguments, array $aliases = []): class@anonymous
将返回一个类,其中包含所有标志(不是别名)作为公共属性,值设置为 true 或该标志的后续索引值。如果提供了类似于 ['f' => 'flag']
的别名,则标志 flag
在脚本调用时可以通过仅 -f
设置。
getValues(array $arguments): class@anonymous
将返回所有提供的值封装在一个匿名类中(原始索引将被保留)。通过在返回的类上调用 ->all()
,将返回一个包含所有值的数组,其中键是原始索引,值是值。通过调用 ->first()
,将返回第一个值。
getCommand(array $arguments): string
是返回值中设置命令名称的别名方法。
许可
GPL-2.0 Willi Eßer