czproject/phpcli
最新稳定版本:v5.1.0
Composer 安装命令:
composer require czproject/phpcli
包简介
Helper class for PHP CLI apps.
README 文档
README
Installation
Download a latest package or use Composer:
composer require czproject/phpcli
PhpCli requires PHP 8.0 or later, optionaly Readline extension.
Usage
use CzProject\PhpCli\ConsoleFactory; require __DIR__ . '/vendor/autoload.php'; $console = ConsoleFactory::createConsole(); // output $console->output('CzProject CLI Simple Console', 'green') ->nl() // new line ->output('Hey!', 'yellow') ->nl() ->output('Fred!', 'blue') ->nl() ->output('Fred is dead!', 'red') ->nl() ->output(['nooooooo...!', ' ', 'But, no problem!'], 'gray') ->nl() ->output('The end.') ->nl(); // input $username = $console->input('Enter your name'); $console->output('Hello! ', 'blue') ->output($username, 'green') ->output(' [user]', 'yellow') ->nl() // print new line ->output('Bye!', 'blue') ->nl(); // input with default value $username = $console->input('Enter your name', 'John'); // confirm $agree = $console->confirm('Do you want to continue?'); // confirm with default value $canQuit = $console->confirm('Really?', TRUE); // select $value = $console->select('Select color:', [ 'value' => 'label', '#ff0000' => 'Red', '#00ff00' => 'Green', '#0000ff' => 'Blue', ]); // select with default value $value = $console->select('Select color:', [ 'value' => 'label', '#ff0000' => 'Red', '#00ff00' => 'Green', '#0000ff' => 'Blue', ], '#ff0000');
Parameters
Arguments
$name = $console->getArgument(0)->getValue(); // string|NULL $size = $console->getArgument(1, 'int') ->setRequired() ->addRule(function ($value) { return $value > 0; }) ->getValue(); $price = $console->getArgument(2, 'float') // float ->setDefaultValue(100.0) ->getValue();
Options
$name = $console->getOption('name')->getValue(); // string|NULL $size = $console->getOption('size', 'int') ->setRequired() ->addRule(function ($value) { return $value > 0; }) ->getValue(); $price = $console->getOption('price', 'float') // float ->setDefaultValue(100.0) ->getValue(); $words = $console->getOption('word') ->setRepeatable() ->getValue();
Supported types
stringintandintegerfloatboolandboolean
License: New BSD License
Author: Jan Pecha, https://www.janpecha.cz/
统计信息
- 总下载量: 4.39k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 7
- 点击次数: 1
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: BSD-3-Clause
- 更新时间: 2013-03-09